1. C++11 成员初始化
初始化列表是成员变量定义初始化的地方 你写了就用你的初始化,你没写我就用缺省值初始化.如果没有缺省值,内置类型的成员就随机值.
2. 内部类
概念: 如果一个类定义在另一个类的内部,这个内部的类就叫做内部类.注意此时这个内部类是一个独立的类,它不属于外部类,更不能通过外部类的对象去调用内部类.外部类对内部类没有任何优越的访问权限.
注意:内部类就是外部类的友元类.注意友元类的定义,内部类可以通过外部类的对象参数来访问外部类中的所有成员.但是外部类不是内部类的友元
特性: 1 . 内部类可以定义在外部类的 public protected private 都是可以的.
2. 注意内部类可以直接访问外部类中的static 枚举成员 不需要外部类的对象/类名.
3. sizeof(外部类) = 外部类,和内部类没有任何关系.
3. 再次理解封装
c++是基于面相对象的程序,面相对象有三大特性 : 封装 继承 多态.(继承 多态 这里不讲解)
c++通过类,将一个对象的属性 与 行为结合在一起.使其更符合人们对于一件事物的认知,将属于该对象的所有东西打包在一起,通过访问限定符选择性的将其部分功能开放出来与其他对象进行交互,而对于对象内部的一些细节,外部用户不需要知道,知道了有些情况也没用,反而增加了使用或者维护者的难度,让整个事情复杂化.
封装 成员变量 和 成员函数都放到类里面,把想给你访问的定义成公有,不想给你访问的定义成私有,这个本质上是一种更严格的管理