(1)类构成了C++面向对象程序设计的基础,他把数据和作用于这些数据上的操作组合在一起,是封装的基本单元。从算法语言的角度看,类是一种数据类型,而对象是具有这种数据类型的变量。
(2)类的数据成员描述问题的属性,成员函数描述问题的行为。其中,数据成员的声明方式和一般变量相同,只是其变量的访问权限由类来控制。
(3)C++通过设置成员的访问属性实现对类成员的访问权限控制。一般类成员有3种访问权限,即公有、保护和私有。其中,私有为类型缺省权限类型,它为类的内部属性,外部函数不能访问;公有类型说明了类的外部接口,任何外部访问只能公有成员进行;保护成员与私有成员相似,差别只在于继承过程中对新产生类的影响不同。
(4)在类的外部,函数只能访问到类的公有成员;在类的的内部,所有成员之间都可以通过成员名直接访问。
(5)New和delete分别用于创建和释放动态的类对象。
(6)构造函数的作用是在对象被创建时利用特定的值构建对象,使此对象有别于彼对象。拷贝构造函数也是一种构造函数,但是其形参必须是本类对象的引用。拷贝构造函数一般用于以下三种情况:一、用类的对象去初始化类的另一个对象。二、函数的形参是类的对象,调用该函数进行实参和形参结合的时候。三、函数的返回值类型是类的对象,函数调用完成时。
(7)类的普通数据成员在类的每一个对象中都有一个拷贝,即同一个类的不同对象之间数据成员是相互独立的,它们之间互不影响。为解决同类不同对象之间的数据共享问题,C++定义了类成员的静态属性。静态数据成员和静态成员函数不属于任何对象,而是属于该类的所有对象。因此,只能通过类名来分别对静态成员数据进行访问对静态成员函数进行调用。静态成员函数一般用于操作该类中的静态数据成员。在静态成员函数的实现中不能直接饮用类中的非静态成员,可以引用类中的静态成员。如果静态成员函数中需要引用非静态成员时,只能通过对象来引用。
(8)编程中会遇到这样一种情况,有一些函数不是类的一部分,但是又需要访问类的成员数据,为解决这些问题,可以将这些函数设置成此类的友元函数。友元函数可以是普通函数也可以是其他类的成员函数。更进一步地,也可以设置友元类,如果A类是B类的友元类,则A类的私有成员函数都是B类的友元函数,都可以访问B类的私有和保护成员。