这些行为结果并非报错, 而是与编译器和执行环境相关的无法估计的结果
"接口"通常指函数的签名
1 让自己习惯C++
1 视C++为一个语言联邦
将C++看作是以多个相关语言组成的结合体而不是一个关系紧密的单一语言..., 因为它属于预处理器, 是运行在编译阶段之前的
现代C++不建议使用预处理器, 因为它无法进行复杂的计算, 只能机械地对代码进行预处理, 且在处理后就与编译器断开了联系, 无法debug
尽量别用#define...只有当编译器能够确认自己可以合法进行操作时编译器才会自动生成默认函数, 否则编译器拒绝生成相关的函数....C++11后加入了=delete操作, 让我们可以明确删除某些函数的生成
7 为多态基类声明virtual析构函数
对所有多态基类来说, 声明虚析构函数非常重要, 这是因为派生类如果被基类指针指着, 然后被...的设计
有以下几点一定要在创立前进行思考:
如何创建和销毁
初始化和赋值的区别
如果被按值传递的话会有什么区别
有哪些是"合法值"
需要继承/被继承么
需要哪些类型转换
需要哪些操作符
哪些编译器函数需要拒绝