摘要: 1 为多态基类声明virtual析构函数 带有多态形态的base classs应该声明一个virtual析构函数。如果该class带有任何virtual的函数,它就应该拥有一个virtual析构函数。这样用基类指针指向的派生类的析构的时候,才会调用到自己的析构函数,将派生类的所有部分都析构掉,否则只 阅读全文
posted @ 2017-08-03 11:20 opkyo 阅读(168) 评论(0) 推荐(0)
摘要: 在编写一个新的class的时候,若有地方尝试调用到类的默认构造函数、copy构造函数、copy赋值函数,如果你没有声明上述函数,编译器会默认为你声明它。在有些情况下,这些class的每一个实例都是独一无二的,并不适合copy构造或者copy赋值,我们该如何去防止class的使用者对其进行这样的操作呢 阅读全文
posted @ 2017-08-02 15:36 opkyo 阅读(215) 评论(0) 推荐(0)
摘要: 1 对于内置型对象来说,应该进行手工初始化,因为c++不保证初始化他们。 2 构造函数最好使用成员初始值(member initialization list),而不是要在构造函数本体内使用赋值操作。初始列列出的成员变量, 其排列次序应该是和它们在class中的生命次序相同。 class aaa { 阅读全文
posted @ 2017-08-02 10:16 opkyo 阅读(172) 评论(0) 推荐(0)
摘要: 一、 基本用法概念 char greeting[] = "Hello"; char* p = greeting; // non-const pointer, non-const data const char* p = greeting; (char const *p = greeting ; ch 阅读全文
posted @ 2017-07-31 17:28 opkyo 阅读(179) 评论(0) 推荐(0)
摘要: 在定义一个类内的专属常量时,通常定义成为静态常量类型,如: class GamePlayer { private: static const int NumTurns = 5; int scores[NumTurns]; .... }; 如果编译器不支持类内静态成员初始化,则可以使用“the enu 阅读全文
posted @ 2017-07-31 15:40 opkyo 阅读(663) 评论(0) 推荐(0)
摘要: 来自:http://hi.baidu.com/pengxiangbobin19890125/blog/item/b05586eee77300212df53411.html C++中的struct对C中的struct进行了扩充,它已经不再只是一个包含不同数据类型的数据结构了,它已经获取了太多的功能。s 阅读全文
posted @ 2017-07-13 10:41 opkyo 阅读(156) 评论(0) 推荐(0)