类内初始化与初始化列表与构造函数内部赋值
来源:互联网 发布:stm8中文数据手册 编辑:程序博客网 时间:2024/05/06 06:52
好的。首先把构造函数内部赋值这种观念和习惯剔除掉。
因为:1.效率低,它的本质是赋值,不是初始化,c++内部机制事实上已经为成员变量默认初始化了,然后你又在构造函数里面赋了一次值。
2.易错,对于const成员变量,初始化之后就不可以赋值了。
下面比较类内初始化和初始化列表。
相同点:1.从名字就可以看出,两者都是初始化。
不同点:1.如果对于同一个变量,两者同时出现,则以初始化列表为主。
2.如果一个类含有多个构造函数,这个时候使用类内初始化会只用写一次,
3.类内初始化的顺序是隐式的,初始化列表一般要按照较严格的顺序来初始化,否则编译器可能会报警告
4.类内初始化不可以(),只可以{}和=
总结:1.尽量使用初始化列表来为成员变量赋值(注意实质上是初始化)
2.对于类(static)成员变量使用类内初始化
阅读全文
0 0
- 类内初始化与初始化列表与构造函数内部赋值
- C++类初始化列表与构造函数内赋值区别
- C++构造函数初始化列表与赋值
- C++构造函数初始化列表与赋值
- C++构造函数初始化列表与赋值
- C++构造函数初始化列表与赋值
- C++构造函数初始化列表与赋值
- C++构造函数初始化列表与赋值
- C++构造函数初始化列表与赋值
- C++构造函数初始化列表与赋值
- C++构造函数初始化列表与赋值
- 初始化列表与构造函数中的赋值语句
- C++ 构造函数初始化列表 与 赋值 总结
- 构造函数与初始化列表
- 构造函数初始化列表和函数内部赋值的区别
- C++构造函数对类成员变量初始化,使用初始化列表和构造函数内部直接赋值 的区别
- 【C++】类的成员初始化表与构造函数内赋值操作
- 基础备忘:类的成员初始化表与构造函数内赋值操作
- mysql配置主从
- Oracle分析函数KEEP、DENSE_RANK的使用
- CodeM美团点评编程大赛初赛B轮 B.送外卖2【三进制状压Dp】
- linux编译安装和yum安装
- HTML基础--基本概念 00
- 类内初始化与初始化列表与构造函数内部赋值
- Leetcode:Permutation Sequence
- 第3章 Java笔记 数据类型和运算符
- Linux常用知识与命令
- tf教程(七):Debugging tf problems
- bzoj 4198: [Noi2015]荷马史诗
- JavaWeb学习总结(十三)——使用Session防止表单重复提交
- Android App专项测试—压力测试
- hdu 2072