C++学习笔记
内联函数
1.内联函数在编译器内部直接展开,不需要被调用; 2.类内部实现的函数,都会作为内联函数; 3.在类的外部实现时才会加inline标识符; 4.inline标识符代表程序员希望他是一个内联函数,具体实现看编译器心情;
友元
1.一般来说,最好在类定义开始或结束前的位置集中声明友元; 2.许多编译器并未强制限定友元函数必须在使用之前在类的外部声明; 3.友元能不用最好别用;
构造函数初始化
1.如果成员是const,引用,或者属于某种未提供默认构造函数的类类型,我们必须通过构造函数初始值列表为这些成员提供初始值;
例如:
class student
{
const int ID;
student(
int id){ID =
id;}
student(
int id):ID(
id){}
};
2.最好令构造函数初始值顺序与成员声明的顺序一致,如果可能的话,尽量避免使用某些成员初始化其他成员; 3.如果一个构造函数为所有参数都提供了默认实参,则它实际上也定义了默认构造函数; 4.在实际中,如果定义了其他构造函数,那么最好也提供一个默认构造函数;
隐式类类型转换
1.只允许一步类类型转换 2.explicit可抑制隐式类类型转换 3.explicit只能用于直接初始化
静态成员
1.静态成员和指针可以是不完全类型 2.静态成员可以作为默认实参
转载请注明原文地址: https://ju.6miu.com/read-3826.html