1. size_t 只是一个typedef, 是c++计算个数时用的某种不带正负号的(unsigned)类型。它也是vector, deque和string内的operator[ ]函数接受的参数类型。
2. explicit 可阻止被用来执行隐式类型转换(implicit type conversions), 但仍可被用来进行显式类型转换(explicit type conversions)
被声明为explicit的构造函数通常比其non-explicit兄弟更受欢迎,因为它们禁止编译器执行非预期(往往也不被期望)的类型转换。除非有一个好理由允许构造函数被用于隐式类型转换,否则把它声明为explicit.鼓励遵循相同的政策。
3. class Widget {
public:
Widget(); //default构造函数
Widget(const Widget& rhs); //copy构造函数
Widget &operator=(const Widget &rhs); //copy assignment 操作符
...
};
Widget w1 ; //调用default构造函数
Widget w2(w1); //调用copy构造函数
Widget w3 = w2 ; //同上
w1 = w2; //调用copy assignment 函数
4. lhs ----"life-hand side" ; rhs ---- "right-hand side"
5. 命名习惯
指向一个T型对象的指针命名为 pt;
rw可能是个 reference to Widget
成员函数:mf
6. TR1和Boost
7.结构体数组的初始化
#include <iostream>
using namespace std;
const int strsize = 10;
struct bop
{
char fullname[strsize];
char title[strsize];
char bopname[strsize];
int preference;
};
int main()
{
bop bop_group[2] = {
{
"alex",
"CTO",
"BadMax",
0
},
{
"amy",
"CEO",
"WWW",
0
}
};
return 0;
}