C++
文章平均质量分 79
zkzk12345
这个作者很懒,什么都没留下…
展开
-
关于Singleton Template与于static member initialization问题
今天写singleton template碰到的问题,就是用template实现singleton模板,很容易就写好了一个基于static member lazy initialization的singleton,大概就是如下的代码段(没认真检查过,不知道有没有错): template class Singleton {private: Singleton(con原创 2011-06-15 19:53:00 · 1252 阅读 · 0 评论 -
可变长参数列表误区与陷阱——va_arg不可接受的类型
实现一个有可变长参数列表函数的时候,会使用到stdarg.h(这里不讨论varargs.h)中提供的宏。例如,我们要实现一个简易的my_printf:1. 它只返回void, 不记录输出的字符数目2. 它只接受"%d"按整数输出、"%c"按字符输出、"%%"输出%本身如下: 1 #include stdarg.h> 2 3 void my_printf(const char* f转载 2011-06-21 18:12:00 · 879 阅读 · 0 评论 -
模板类成员函数特化写法
昨天有对模板类的函数成员特化需求,目的是为了对不同模板参数实现不同的操作,结果在写过程中碰到already defined的问题(貌似是模板新手最容易碰到的问题了),类外的成员函数和同在类外的特化版本成员函数冲突了。因为对模板用法不是很熟悉,找了半天发现网上一段对话:gcc下面,原创 2011-07-13 13:02:22 · 7410 阅读 · 0 评论 -
蛋疼的缺少“;”的调试方法
之前别人问过我程序里缺少个分号“;”编译通不过,帮他找了很久都没找到缺失分号的确切位置,只是根据error信息知道大概的位置,于是在第一个ERROR位置前加了个分号,算是把问题压下去了。这种方法并没有真正解决问题,不过实在懒得找了。。。。今天眼见一位牛人三下五除二找到了分号缺原创 2011-08-02 18:49:37 · 415 阅读 · 0 评论 -
__attribute__ ((packed)) 的作用
最近在看我们的代码的时候发现声明类型的时候有 __attribute__ ((packed))的结构体类型声明,不知道是什么意思,查了下知道是如下含义:1. __attribute__ ((packed)) 的作用就是告诉编译器取消结构在编译过程中的优化对齐,按照实际占用字节转载 2011-08-18 15:12:32 · 465 阅读 · 0 评论