之前的笔记搬运
初始化列表
- 初始化列表是指在类的构造函数后, 以 ” : ” 开始, “ , ”分割的数据成员列表,每个数据成员后面跟一个放在括号中的初始化式。
如:
1 | class test |
const成员或(&)引用类型的成员。这两种类型都必须初始化,不能对他们赋值,
而在类中定义变量时, 又不是可以直接赋值, 那么就可以使用初始化列表对其初始化;
如:
1 | class test |
还有一种情况可以是用初始化列表, 就是你是你需要初始化指定对象的值时;
如果你定义了两个类:
1 | class test |
Const修饰类对象参数
当一个函数的参数是一个类对象, 并且使用const修饰的情况下, 如:
void fun(const 类名 对象名), 那么在此函数中,
是不能通过传入的类对象使用任何类中成员函数的,
因为使用const修饰过的属性是不可更改, 编译器不知道该函数会不会更改类的数据成员;
但是可以在类中的函数参数后也加上const修饰, 告诉编译器,
此函数不会修改类中的数据成员的值,
那么在经过const修饰的类对象中就可以调用此函数了;
格式: void getxx() const, 经过这样定义的类成员函数也称(常成员函数),
一般用来修饰Get的函数;
成员函数指针
之前在C语言中我们学到普通的函数指针命名函数如下:
函数指针的定义命名规范: typedef type (*pfn) (参数类型)
使用:
1 | (*指针名) (参数); //调用 |
那么该如何定义类的成员函数指针呢? 如何赋值与调用呢?
定义时只需要加上类的作用域和星号即可
如下:
1 | 类成员函数指针的定义命名规范: |