一、inline函数:
-
内联函数的定义方法:在函数定义的前面加上inline关键字;
-
使用内联函数的注意事项:
(1)在内联函数中不许与使用循环语句、开关语句和递归调用,否则按非内联函数处理
(2)内联函数的定义必须出现在内联函数第一次调用之前
(3)在类结构中所有在类说明内部定义的函数都是内联函数 -
类的成员函数分为内联函数和外联函数。内联函数是指那些定义在类体内的成员函数。说明在类体内,定义在类体外的成员函数叫做外联函数。
-
引入内联函数的目的是为了解决程序中函数调用的效率问题。
-
inline函数应该简洁,如果语句较多,不适合定义为内联函数;
-
inline函数要在函数被调用之前声明。
-
关于构造函数和析构函数:
- delete 只会调用一次析构函数,而delete[]会调用每一个成员的析构函数;
- 析构函数的调用次序:先派生类的析构后基类的析构;
- 构造函数的调用次序:先基类的构造后派生类的构造;
-
static关键字:
- 静态局部变量;(面向过程)
- 静态全局变量;(面向过程)
- 静态函数;(面向过程)
- 静态类成员变量;(面向对象)
- 静态类成员函数;(面向对象)
用static修饰的全局变量可以在运行时修改;
用static修饰的函数,其内部变量可以传递给其他函数;(静态类成员函数)
-
C++不能重载的运算符:不能重载的运算符只有5个:
1、 . (成员访问运算符)
2、 .* (成员指针访问运算符)
3、 :: (域运算符)
4、 sizeof (长度运算符)
5、 ?: (条件运算符) -
C++生成exe的正确步骤是:
预处理、编译、汇编、链接
预处理:将源代码转换为机器可认识代码的过程。
编译:编译程序读取源程序(字符流),对之进行词法和语法的分析,将高级语言指令转换为功能等效的汇编代码;
汇编:再由汇编程序转换为机器语言,
链接:并且按照操作系统对可执行文件格式的要求链接生成可执行程序。
它主要包括以下步骤:
源程序->编译预处理->编译->优化程序->汇编程序->链接程序->可执行文件 -
std和cout的含义:cout 是C++中 ostream 类型的对象,该类被封装在 < iostream > 库中,该库定义的名字都在命名空间 std 中,所以 cout 全称是 std::cout 。
-
拷贝构造函数的三种应用场景:
(1)函数值的整体拷贝–当类的一个对象去初始化该类的另一个对象;
(2)函数参数调用–函数的形参是类的对象;
(3)返回值–函数的返回值是类对象