C++基础知识随记

一、什么情况必须使用初始化列表的方式声明构造函数?

1.包含常量类型的成员

2.包含引用类型的成员

3.包含没有默认构造函数的类类型成员

4.优点:对于包含有类类型成员的类来说,省去了调用一次默认构造函数的过程。(初始化列表:拷贝构造     普通构造函数:默认构造+赋值构造)

二、函数后加const(只有类的非静态成员)的作用是什么?

1.在此函数中无法修改类的实例状态(即是类的成员的值)。(若要解除这种限制,可以在类的成员定义之前加上mutable)

三、const对象只能调用自身的const成员函数。

四、函数是否能够返回变量的引用,为什么?

1.如果该变量的生命周期在函数调用完成前已经结束,返回该变量的引用不合法。

2.如果该变量在调用该函数之前就已经存在,返回其引用合法。

坚持成就伟大
原文地址:https://www.cnblogs.com/xian-yongchao/p/11991725.html