- 博客(4)
- 资源 (4)
- 收藏
- 关注
原创 C++ 静态变量或成员初始化陷阱与缺陷
C/C++ 中静态变量初始化的问题归根节点在于一点:静态变量的创建顺序【禁止或不推荐】用函数返回值初始化静态变量int func(){ return 50;}void test(){ static int i = func();}int main(){ test(); return 0;}这段代码用 C 写是编译出错的,因为 C 中静态变量如果在声明
2014-11-17 21:08:27 2309
原创 #pragma 预处理指令
#pragma预处理指示供编译器实现一些非标准的特性,C标准没有规定#pragma后面应该写什么以及起什么作用,由编译器自己规定。有的编译器用#pragma定义一些特殊功能寄存器名,有的编译器用#pragma定位链接地址,本书不做深入讨论。如果编译器在代码中碰到不认识的#pragma指示则忽略它,例如gcc的#pragma指示都是#pragma GCC ...这种形式,用别的编译器编译则忽略这些指
2014-11-13 19:59:24 697
原创 C++ 构造函数和析构函数是否可以继承?
先看一个例子:#include class A{public: A() { ::std::cout << "constructor: A" << ::std::endl; } // 构造函数不能为 virtual A(int aa): a(aa) { ::std::cout << "constructor: A, a = " << a << ::std::endl; }
2014-11-12 18:13:24 9559
Advanced Programming in the UNIX Environment 2nd Edition 英文文字带书签版
2014-05-03
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人