1、类(Classes)
类(class)是一种将数据和函数组织在同一个结构里的逻辑方法。定义类的关键字为 class ,其功能与C语言中的struct类似,不同之处是class可以包含函数,而不像 struct只能包含数据元素。
private :class的private成员,只有同一个class的其他成员或该class的 “friend”class可以访问这些成员。未声明类型,则默认为private。
protected :class的protected成员,只有同一个class的其他成员,或该class 的 “friend”class,或该class的子类(derivedclasses)可以访问这些成员。
public :class的public成员,任何可以看到这个class的地方都可以访问这些 成员。
//classes example
#include<iostream.h>
classCRectangle{
intx,y;
public:
int area(void){retur (x*y);}
};
voidCRectangle::set_values(inta,intb){
x=a; y=b;
}
int main (){
CRectanglerect;
rect.set_values(3,4);
cout<<"area:"<<rect.area();
}
2、构造函数
在前面的例子中,如果我们在调用函数 set_values()之前就调用了函数area(),将会产生什么样的结果呢?可能会是一个不 确定的值,因为成员x和y还没有被赋于任何值。 为了避免这种情况发生,可以通过声明一个与class同名的函数:构造函数。当且仅当要生成一个 class的新的实例(instance)的时候,也就是当且仅当声明一个新的对象,或给该class 的一个对象分配内存的时候,这个构造函数将自动被调用。
CRectangle::CRectangle(inta,intb){
width=a;
height=b;
}
3、析构函数
析构函数必须与class同名,加水波号tilde(~)前缀,必须无返回值。
4、操作符重载
5、