Effective C++
摘要:1 让自己习惯C++常量指针的定义 由于常量定义式通常被放在头文件中以便被不同的源文件含入,因此有必要将常量指针声明为const(即声明为指针常量)。例如若要在头文件内定义一个常量的 char*-based 字符串,你必须写 const 两次: const char* const AUTHOR_NAME = "Scott Meyers";“the enum hack”技术 即在类内部定义枚举量来当整型常量使用。例如: class Player { private: enum { NumTurns = 5 }; int scores[NumTurns]; //NumTurns
阅读全文
C++ 对象初始化和赋值
摘要:1.区分初始化和赋值 在C++中,当一个新对象被创建时,会有初始化操作;而赋值是修改一个已经存在的对象的值。 初始化操作由构造函数完成,而赋值操作由operator=操作符函数完成。如果程序员没有提供构造函数和operator=操作符函数,那么编译器会提供缺省版本,使用缺省构造函数或缺省复制构造函数初始化对象,使用缺省operator=操作符函数执行赋值操作。举例如下:View Code /** * @file Main.cpp */#include <iostream>using std::cout;using std::endl;class CDummy{public: CDu
阅读全文