C++怎么使用类内初始化器初始化数据成员

这篇文章主要介绍“C++怎么使用类内初始化器初始化数据成员”,在日常操作中,相信很多人在C++怎么使用类内初始化器初始化数据成员问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”C++怎么使用类内初始化器初始化数据成员”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

C.45:不要只初始化数据成员的默认构造函数;使用类内成员初始化器

Reason(原因)

使用类内初始化器可以让编译器为你生成一个函数。编译器生成的函数效率更高。

Example, bad(反面示例) 
class X1 { // BAD: doesn't use member initializers
   string s;
   int i;
public:
   X1() :s{"default"}, i{1} { }
   // ...
};
Example(示例) 
class X2 {
   string s = "default";
   int i = 1;
public:
   // use compiler-generated default constructor
   // ...
};
Enforcement(实施建议)

(简单)默认构造函数应该比使用常量初始化数据成员做的更多。

译者注:差不多就是杀鸡焉用牛刀的意思。

到此,关于“C++怎么使用类内初始化器初始化数据成员”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注网站,小编会继续努力为大家带来更多实用的文章!