C++ Primer

定义在类内部的成员函数是隐式的inline函数。

一般,如果非成员函数是类接口的组成部分,则这些函数的声明应该与类的声明放置在同一个头文件中。

类的构造函数不能声明为const的,当创建类的一个const对象时,直到构造函数完成初始化过程,对象才能真正取得其“常量”属性。

 如果类的成员是const,引用或者属于某种未提供默认构造函数的类类型,则必须通过构造函数初始值列表为这些成员提供初始值。成员的初始化顺序与它们在类中出现的顺序一致,与构造函数初始值列表中的顺序无关。

如果构造函数只接受一个参数,则它实际上定义了转换为此类类型的隐式转换机制,有时把这种构造函数称为转换构造函数。关键字explicit可以阻止这种隐式转换,只能在类内声明构造函数时使用explicit关键字,在类外部定义时不应重复。

 操纵符endl可以来换行并刷新输出流缓冲区(即数据真正写到输出设备或者文件),flush刷新缓冲区,但不输出任何额外的字符;ends向缓冲区插入一个空字符,然后刷新缓冲区。操纵符unitbuf在每次输出后都刷新缓冲区,nounitbuf则重置流。

原文地址:https://www.cnblogs.com/larry-xia/p/12541556.html