摘要: #include class NextOnFreeList{public: NextOnFreeList *next;};class Rational {public: Rational(int a = 0, int b = 1) : n(a), d(b) {} inline void * operator new (size_t size); //over load new and delete operator inline void operator delete (void *doomed, size_t size); static void newMemPool() {ex... 阅读全文
posted @ 2013-09-23 14:40 calabashdad 阅读(224) 评论(0) 推荐(1) 编辑
摘要: 1 单例模式下构建出来的对象本质上仍然是一个全局变量,因此全局变量可以完成同样的功能。2 需要考虑线程安全,避免new出2个对象。class SingleTon{private: int i_; SingleTon(int x) : i_(x) {} SingleTon &operator = (SingleTon &); SingleTon(const SingleTon &); //not allow copy and assign ~SingleTon(){}; static SingleTon *st_; static boost... 阅读全文
posted @ 2013-09-23 09:15 calabashdad 阅读(181) 评论(0) 推荐(1) 编辑
摘要: 出错信息为:1> LINK : 已指定 /LTCG,但不需要生成代码;从链接命令行中移除 /LTCG 以提高链接器性能1>main.obj : error LNK2022: 元数据操作失败(8013119F): 现有的 TypeRef 应有对应的 TypeDef(dummy),但它没有: (0x01000020)。1>LINK : fatal error LNK1215: 元数据操作失败(8013119F):你只需要在一个cpp文件中添加namespace boost { struct boost::thread::dummy {};}即可通过编译。 可能是 bind展开后某 阅读全文
posted @ 2013-09-17 15:49 calabashdad 阅读(1468) 评论(3) 推荐(0) 编辑
摘要: 为防止迭代器失效,采用以下方法来避免。 for (pos = coll.begin(); pos != coll.end();) { if (pos->second == value) { coll.erase(pos++); } else { ++pos; } } map::iterator it = ShapeFactory::factories.begin(); while(it != ShapeFactory::factories.end()) delete it++->second; 阅读全文
posted @ 2013-09-09 10:38 calabashdad 阅读(222) 评论(0) 推荐(0) 编辑
摘要: using namespace std;class AddValue{private: int value_;public: AddValue(int v) : value_(v) { } void operator() (int &elem) const { elem += value_; }};int main(){ list coll; for (int i = 1; i <= 9; ++i) { coll.push_back(i); } for_each(coll.begin(), coll.en... 阅读全文
posted @ 2013-09-06 10:20 calabashdad 阅读(317) 评论(0) 推荐(0) 编辑
摘要: 使用process explorer,注意,如果是使用release版本的话,需要将其对应版本的pdb文件导入进来,然后重启procexp,即可看到线程信息。 阅读全文
posted @ 2013-09-04 15:15 calabashdad 阅读(452) 评论(0) 推荐(0) 编辑
摘要: 科技进步的牛逼作品!个人体验感觉好处有这么几点:1.爱看书者有福了。可以随身携带阅读资料,读一读自己喜欢的书,把一些空闲时间也利用上。上次纠结是买个pad还是买个智能手机,想了想,还是买了pad,因为我当时的主要用途是用来看书和下棋。2.路痴可以用地图。各有利弊,只想问一句,非要弄到用手机来看地图的地步吗?你以为你谁啊,环球旅行呢3.及时上网处理业务,例如电子邮件回复,购物等。这点好处没的说。本人没用过智能手机,所以体验感不强,理解不深刻,据观察,坏处也有几点:1.占掉你很多时间。一天不花个几小时在手机上干点无聊的事情就难受,好多人是喜欢刷微博,玩游戏,唉,没有错,错的是花时间太多,时间廉价很 阅读全文
posted @ 2013-08-07 20:26 calabashdad 阅读(1106) 评论(0) 推荐(0) 编辑
摘要: 每次更新索引之前,都需要将缓存中的数据拷出来写入,每个地方都需要,若有遗漏,则会导致索引记录的文件长度偏少,不准确。记录位置: 1.每隔一定时间 TIME_INTERVAL 时 2.开启新文件时 NEW FILE 3.手动停止录像时 HADNLE_STOP_RECORD 阅读全文
posted @ 2013-08-05 00:33 calabashdad 阅读(124) 评论(0) 推荐(0) 编辑
摘要: 头文件里面的错误,没有使用此头文件,不编译,就检测不到错误 阅读全文
posted @ 2013-06-27 11:19 calabashdad 阅读(257) 评论(0) 推荐(0) 编辑
摘要: 构建全局变量时候,如果出现异常,应该如何捕获?初始化串口时遇到的问题,想尽各种方法,不知道该如何绕开其异常部分。第二天问琨哥,他说可以用指针啊,new出来不就完了...顿悟...不构建全局变量,而是先构建一个全局指针,在main开始执行之后再对这个指针进行new。如下:g_com_num = “COM1”boost::asio::serial_port(*g_p_iosev,g_com_num)//若有异常不知道如何捕获boost::asio::serial_port*g_p_sp=NULL;g_p_sp=newboost::asio::serial_port(*g_p_iosev,g_com 阅读全文
posted @ 2013-04-11 13:00 calabashdad 阅读(157) 评论(0) 推荐(0) 编辑