4 基于对象的编程风格
4.1 如何实现一个class
Stack先进后出,pop去除stack最后一个被push的数值,peek查看看stack最后一个被push的数值。
class Stack; //前置声明后,可以进行类指针定义,或以此class作为数据型别。
public members可以在程序的任何地方被取用,private members只能在member function或class friend内被取用。
如果在class主体内定义member function,这个member function会自动被视为inline函数。
4.2 Constructors和Destructors
constructors的函数名称必须与class名称相同,语法规定,constructor不应指定返回型别,不需要返回任何值。它可以被重载。例如Triangular class可以有三个constructors:
第一种default constructor
它不需要任何参数。这意味这两种情况。
第一,它不接收任何参数:
第二,它为每个参数提供了默认值:
第二种成员初始化列表
成员初始化列表紧接在参数列表最后的冒号后面,以逗号隔开。
Destructor主要用来释放在constructor中对象生命周期中配置的资源。不能被重载。
第三种成员逐一初始化