摘要: Item1:用 const和inline来代替#defineItem19:成员函数:需要重载的函数必须定义为成员函数 非成员函数 友元函数:当需要访问类中的数据,但是又不能定义为成员函数时,定义为友元函数Item 21:尽量的使用 const int f() const:任何修改成员变量和调用非const成员函数都视为非法,但是如果要定义为const,并且还要修改他们的值,那么有两种方法来做: (1)变量定义为mutable (2)const_cast<X*>(this),把this指针Item 22:优先选用传引用而不是传值 按值传递对于一个对象来说,要多次调用拷贝构造函数和析构 阅读全文
posted @ 2012-04-09 11:03 张兰云 阅读(169) 评论(0) 推荐(0) 编辑
摘要: C++中const总结对于基本声明1. const int r=100; //标准const变量声明加初始化,因为默认内部连接所以必须被初始化,其作用域为此文件,编译器经过类型检查后直接用100在编译时替换2. extend const int r=100; //将const改为外部连接,作用于扩大至全局,编译时会分配内存,并且可以不进行初始化,仅仅作为声明,编译器认为在程序其他地方进行了定义3. const int r[ ]={1,2,3,4};struct S {int a,b;};const S s[ ]={(1,2),(3.4)}; //以上两种都是常量集合,编译器会为其分配内存,所以 阅读全文
posted @ 2012-04-09 10:38 张兰云 阅读(217) 评论(0) 推荐(0) 编辑