将以下代码的注释分别代码打开和关闭,在不同系统上运行,查看结果。#include #include int main( int argc,char *argv[] ){ FILE *fp = fopen( "a.txt","ab" );// fse...
阅读(664) 评论(6)
如下代码如果初看,很难以为其存在多处陷阱#include "./GetTime.h"#ifdef _XBOX360# include "Console1Includes.h" // Developers of a certain platform will know what to do here.#elif ...
阅读(646) 评论(6)
由于STB上调试不方便,故而release的逻辑错误,采取提示到终端的方法。方法:通过使用kAssert替换crt原生的assert,#ifdef KYLIN_DEBUG_MODE# define kAssert( X ) assert( X )#else static inline void __kassert_r__...
阅读(660) 评论(2)
详细见代码,不过发现windows 7上和windows xp上部分调用性能差异巨大。#include #include #define NUM 80000000class lockable{public: lockabl...
阅读(419) 评论(0)
下面代码是在windows实现的一个简单读写锁和非测试用例,贴出来供分享和参考。说明:读写锁的目的在于针对读多写少的应用场合,减少锁同步的互斥等待成本。从代码可以看出如果读或写成本很低,直接用CRITICAL_SECTION成本更优。—— 如果没有锁同步争用,CRITICAL_SECTION的成本几乎为零(测试在Win ...
阅读(649) 评论(1)
只是一种猜测,在游戏领域来看,走的模式是:原始方式——》基础库累积 ——》形成开发框架、游戏引擎 ——》开发中间件 ——》插件积木化“原始方式”属于落后、淘汰状态;“基础库累积”已有相当之多可选,该模式已相当成熟;“游戏引擎、开发框架”也是多不胜数,该模式也已成熟;“中间件模式”也已大行其道,最...
阅读(442) 评论(3)
要系统化和全面的描述、记录,很有难度和需要水平、知识。下面是自己实际开发中遇到一些问题小计,和合理化方法。1.递归删除.svn文件夹 find $(pwd) -name .svn | xargs rm -rf 知识点:查找命令find、whereis、grep;取命令输出$(pwd)(顺便:$LD_LIBRARY_PATH...
阅读(415) 评论(4)
linux的移植,有很多内容可以讲,也有很多内容需要考虑,市面上也有些专门介绍的书。这里是3个月前为公司做移植时遇到的一些问题和解决,原内容是发给其他同事做共享用的,这里直接贴出来,也不做修改了。linux移植建议 本次linux移植,由于大家前期在数据类型、平台抽象接口方面做了很多工作,相对比较顺利。下面是移植中...
阅读(903) 评论(2)
    自己常用的几种void *的技法,总结一下,大概用三种代表。    1.实现隐藏:    不希望暴露数据结构、实现思路时,在头文件里只一个void *的实现体,实现的时候再调用实现体的实...
阅读(360) 评论(5)
    在做字符串、文本操作时,我们时常会需要在wchar_t *和char *之间做转换或搭桥。直接用API,参数太多不容易记住,常常要查文档,浪费不少时间。为了自己方便,对简单的转换写了一个简单的转换包装类。下次或者用得着,帖代码做为保存。    顺便提一下:发现有个...
阅读(404) 评论(2)
这篇文章是我在找资料时找到的。随便抽看了几眼,顿感胸口欢快。所以,把原文抄袭过来,以后再看。原文地址:http://www.sqlsky.com/soft-engineer...
阅读(489) 评论(1)
    我常用的buffer有std::vector的动态连续缓存和char buf[]的静态缓存。     char buf[]不能够自动增长;std::vector不方便前向读取、不能直接写缓存。这里是一个即连续、又能够自适应,而且可以直接操作缓存的buf...
阅读(390) 评论(4)
很久没有写blog了,一直很懒惰。这几天写了个内存对象池,用于对需要频繁的分配、释放做优化。 在windows和linux下分别试验,结果linux下只有6倍的提升(原因是linux系统内核对小对象本身就有内存对象池优化)。 测试中还发现原来stlPort的vector居然和标准有所出入,msvc8的stl倒是表现很准确(不过,ms的ba...
阅读(484) 评论(2)
NAME := main.exeCXX := g++LINK := g++ CXXFLAGS += -I$(STL)/stlportCXXFLAGS += -I$(ACE)CXXFLAGS += -I../includeCXXFLAGS += -g -wCXXFLAGS += -D...
阅读(409) 评论(0)
好久没有写点内容了。一是工作忙;另一个也是才疏学浅没什么独到见解可写;而且,我写blog往往都是想用于记录。自己写的lzw算法的实现,vc8.0 和 g++ 3.2.3 编译通过(看看一堆的typedef typename就是为了g++)。由于lzw是流式无损压缩算法,本想用于网络,实际测试下来压缩效果并不是很理想(可...
阅读(860) 评论(11)
1 2 3 4 下一页共4页  到第