C++ Primer Chapter 7-4
来源:互联网 发布:中兴通讯讲师 知乎 编辑:程序博客网 时间:2024/05/23 21:17
1:委托构造函数:就是把初始化列表改成了以函数调用,形式上看是这样的,实质是通过这种方法来实现把初始化任务委托给某个构造函数(不是本身)
2:当委托构造函数调用时,先执行被委托的构造函数的初始化列表和函数体,然后再执行委托者的函数体。
3:类类型隐式转换,一个实参的构造函数定了隐式的该实参类型向本类类型转换规则。类似于类型隐式转换,在需要的地方自动执行(如果有该种转换规则存在)。
4:类型自动隐式转换只能执行一步。见 page264。
5:explicit 有时候我们并不希望隐式转换发生,这样也许会对程序的查错造成巨大干扰,我们不知道哪里用了隐式转换,这时我们可以用explicit 关键字在只有一个参数的构造函数前,这样便可以阻值这类情况。注意explicit只用在类内部的构造函数声明处,不应重复出现在类外部构造函数定义处。
6:使用了explicit的构造函数 ,只能用于直接初始化,而不能用于赋值初始化 page265
7: explicit 定义的构造函数是可以进行强制类型转换的。与基本类型的强制类型转换方法一致 A(a);
8:聚合类 page 266;
9:字面值常量类:数据成员都是字面值类型的聚合类是字面值常量类 具体见page 267.
10: 类中的静态成员 :和所有对象无关,是一个与类相关的成员,可以 public ,private 等等。静态成员是被所有的类对象共用的。
11:静态成员函数;该类函数中没有隐式的 this 指针
12:static声明静态成员时,static只能出现在类的内部,
非 constexpr 的 static 成员只能定义在类的外部(只能在外部初始化,内部不可初始化),并且定义类似成员函数的类外定义,先类型,再作用域,再变量。
13:constexpr 的 static 成员,如果类内出现初始化值,则外部定义就不能再有初始值指定,但是外部的定义语句必不可少,外部的定义才是真正的定义,但是不可以有指定值。(只可以内部初始化,外部不可初始化)
14:静态成员可以是不完全类型
0 0
- C++ Primer Chapter 7-4
- C++Primer-Function chapter
- C primer plus -- Chapter 2
- [primer] chapter-7 Functions
- C++ Primer Chapter 4
- c primer plus 4th edition Programing Exercises answer(Chapter 7)
- C++ Primer Chapter 7-1
- C++ Primer Chapter 7-2
- C++ Primer Chapter 7-3
- C++ Primer Chapter 9-4
- C++ Primer Chapter 10-4
- C++ Primer Chapter 13-4
- C++ Primer Chapter 14-4
- C++ Primer Chapter 15-4
- c primer plus Chapter 14 p383
- 《C primer plus》笔记--Chapter 1
- C++Primer Chapter One学习笔记
- c primer plus 4th edition Programing Exercises answer(chapter 6)
- C++ Primer Chapter 7-3
- 算法时间复杂度的表达-渐进符号与主定理
- Spring AOP和动态代理
- 关于python打包成exe
- php服务安装和配置以及和apache整合
- C++ Primer Chapter 7-4
- android 介绍Retrofit的简单使用
- 洛谷 P2604 [ZJOI2010]网络扩容
- Redis源码剖析和注释(七)--- 快速列表(quicklist)
- 前端相关知识网址分类
- 页面添加了禁止右键,如何查看源代码呢?
- Spring事务异常回滚,捕获异常不抛出就不会回滚
- Centos 升级php
- Hiho1507 : 可疑的记录