- 博客(5)
- 资源 (17)
- 收藏
- 关注
原创 重读经典-《Effective C++》Item4:确定对象被使用前已先被初始化
1. 永远在使用对象之前先将它初始化(1) 对于无任何成员的内置类型,须手工进行初始化。如:int x = 0;Const char* text = "A C-style string";Double d;Std::cin >> d; //以读取input stream的方式完成初始化(2) 对于内置类型意外的任何其他东西,初始化由构造函数函数完成。规则1:确保每一个构造函数都将对象的每一个成员初始化。注意:别混淆了赋值(assignment)和初始化(init
2010-07-18 17:29:00 2804
原创 重读经典-《Effective C++》Item3:尽可能使用const
1. const关键字const可以修饰的对象分类在class外部修饰global或者namespace(reference Item2)作用域中的常量在class内部修饰static和non-static成员变量在文件、函数、区块作用域(block scope)中修饰被声明为static的对象对于指针,可以修饰指针本省、指针所指物、或者同时修饰两者修饰函数返回值,函数参数,成员函数本身 如,char greeting[] = "Hello";
2010-07-18 17:18:00 2696
原创 重读经典-《Effective C++》Item2:尽量以const,enum,inline替换#define
○ 静态常量数据成员可以在类内初始化(即类内声明的同时初始化),也可以在类外,即类的实现文件中初始化,不能在构造函数中初始化,也不能在构造函数的初始化列表中初始化; ○ 静态非常量数据成员只能在类外,即类的实现文件中初始化,也不能在构造函数中初始化,不能在构造函数的初始化列表中初始化; ○ 非静态的常量数据成员不能在类内初始化,也不能在构造函数中初始化,而只能且必须在构造函数的初始化列表中初始化; ○ 非静态的非常量数据成员不能在类内初始化,可以在构造函数中初始化,也可以在构造函数的初始化列表
2010-07-12 20:57:00 4091 5
原创 重读经典-《Effective C++》Item1:视C++为一个语言联邦
C++已经是个多重范型编程语言(multiparadigm programming language),一个同时支持过程形式(procedural)、面向对象形式(object-oriented)、函数形式(functional)、范型形式(generic)、元编程形式(metaprogramming)的语言。如何理解这样一个语言?将C++视为一个由相关语言组成的联邦而非单一语言,在其某个次语言中,各种守则与通例都倾向简单、直观易懂、并且容易记住。C++的4个次语言: ○ C
2010-07-12 20:21:00 3054 1
原创 重读经典-《Effective C++》Item0:基本概念
基本概念1. 声明Declaration:告诉编译器某个东西的名称和类型,但略去细节。2. 定义Definition:提供编译器一些声明所遗漏的细节。对对象而言,定义是编译器为此对象分配内存的地点。对function和function template而言,定义提供了代码本体。对class和class template而言,定义类出他们的成员。3. 初始化Initialization:是给予对象初值的过程。对用户自定义类型的对象而言,初始化由构造函数执行。
2010-07-12 14:31:00 2501 2
gcov-tools-1.0.tar.gz
2011-04-29
gcov-1.0.tar.gz
2011-04-29
gcov-dump-1.0.tar.gz
2011-04-29
analysis of ACE_Task-putq with timeout=0 when queue is full on Linux platform.pdf
2010-09-27
Explanation about “pure virtual function call” on Win32 platform.pdf
2010-09-27
《深入理解计算机系统》3.38题解——缓冲区溢出攻击实例.pdf
2010-09-27
《深入理解计算机系统》3.38题解——缓冲区溢出攻击实例文档
2009-12-27
“google面试题目——奇偶换位”完全解析
2008-09-05
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人