C++类
1. 定义抽象数据类型
(1).成员函数的声明必须在类的内部,它的定义既可以在类的内部也可以在类的外部。定义在类内部的函数是隐式的inline函数。
this:
(2).成员函数通过一个名为this的额外的隐式参数来访问调用他的那个对象。当我们调用一个成员函数时,用请求该函数的对象地址来初始化this。
//伪代码,用于说明调用成员函数的实际执行过程
Sales_data::isbn(&total);
(3).在成员函数内部,我们可以直接使用调用该函数的对象的成员,而无需通过成员访问运算符来做到这一点,因为this所指的正是这个对象。任何对类成员的直接访问都被看做this的隐式引用。
(4).对于我们来说,this形参是隐式定义的。实际上,任何自定义为this的参数或变量的行为都是非法的。此外,this是一个常量指针,我们不被允许改变this中保存的地址。
(5).const 成员函数:
默认情况下,this的类型是指向类类型为非常量版本的常量指针。尽管this是隐式的,但它仍然遵循初始化规则,即我们不能把this绑定到一个常量的对象上。这一情况也就使得我们不能在一个常量对象上调用普通的成员函数。
紧跟在参数列表后面的const表示this是一个指向常量的指针,像这样使用const的成员函数被称为常量成员函数。
ÿ