“ 在一些简单的应用程序中,类的用户和类的设计者常常是同一个人。尽管如此,还是最好把角色区分开来。当我们设计类的接口时,应该考虑如何才能使得类易于使用;而当我们使用类时,不应该顾及类的实现机理。”
const(常量)对象只能访问const成员函数,和全部成员(如果public),但只读。
一般(变量)对象可以访问全部成员和成员函数,但对const成员只读。
const成员函数只能访问const成员函数。
普通成员函数可以访问全部成员函数。
简单理解:const对象是常量,当然只读。一般对象的const成员当然只读。
特殊的点只有:const对象和const成员函数只能访问const成员函数。
将成员变量声明为mutable,任何成员函数都能修改该mutable成员的值。
———————————————————————————————————————————
struct可以同class关键字一样定义类,struct定义的类成员默认public,而class默认private。
——————————————————————————————————————————在类中定义的函数会被编译器自动声明为内联函数
编译器决定是否生成内联代码完全是优化策略的问题。一般认为如果函数体积很小,内联可以节约函数调用开支以提升性能,就会生成内联的代码。如果函数体积比较大,内联节约的函数调用开支与函数本身相比可忽略,反而内联造会成代码体积变大,多占用内存,这种情况不会生成内联的代码。
引用自知乎