![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Effective C++
文章平均质量分 93
骑猪去兜风..
无
展开
-
C++初始化类的常量数据成员、静态数据成员、常量静态数据成员
有关const成员、static成员、const static成员的初始化:1、const成员:只能在构造函数后的初始化列表中初始化(C++98); (C++11提供了类内初始化,因此内类常量可在声明类时进行类内初始化,因此该类内常量的作用域属于类级,即该类的所有对象均具有同一个值。)#include <iostream>using namespace std;class A ...原创 2018-07-10 10:22:08 · 8210 阅读 · 2 评论 -
Effective C++(条款01-25)总结
条款01:视C++为一个语言联邦1.C2.面向对象的C++3.C++模板4.STL条款02:尽量以const,enum,inline替换#define1.对于单纯常量,最好以const对象或enum替换#define。const相比于define的好处: define直接常量替换,出现编译错误不易定位(不知道常量是哪个变量)define没有作用域,const...原创 2018-07-10 21:29:02 · 411 阅读 · 0 评论 -
Effective C++(条款26-40)总结
条款26:尽可能延后变量定义式的出现时间1.尽可能延后变量定义式的出现。这样可以增加程序的清晰度并改善程序效率。不只应该延后变量的定义,直到非得使用该变量的前一刻为止,甚至应该尝试延后这份定义直到能够给它初值实参为止。如果这样,不仅能够避免构造(和析构)非必要对象,还可以避免无意义的default构造行为。string encryptPassword(const string& ...原创 2018-07-11 21:35:07 · 568 阅读 · 0 评论 -
Effective C++(条款41-52)总结
条款41:了解隐式接口和编译期多态1.classes和templates都支持接口和多态(polymorphism)。2.对classes而言接口是显式的,以函数签名(函数名称、参数类型、返回类型)为中心。多态则是通过virtual函数发生于运行期。显式接口:由于下面代码w的类型被声明为Widget,所以w必须支持Widget接口。如w.size()的成员函数的调用,又如,temp.n...原创 2018-07-12 20:12:34 · 426 阅读 · 0 评论