C++笔记(20)——类和对象入门

C++笔记(20)——类和对象入门

C++笔记(20)——类和对象入门

C++笔记(20)——类和对象入门

类将数据表示和操纵数据的方法组合成一个整洁的包,这是类最吸引人的地方,包括类成员(包括数据成员和成员函数)声明和类方法定义两部分。一般将数据成员设为私有,将成员函数设为共有作为接口,程序员通过使用类方法作为接口去操作数据成员。数据成员也可以设为共有,但一般不这样做,因为数据隐藏本身就是类和对象思想的一个重要体现,类似于服务器和客户端,服务器是类声明,客户是使用类的程序,程序员只需要通过类方法去利用数据成员,知道输入什么参数放回什么结果,不需要了解数据如何表示,也不需要了解如何实现,后续如需修改,只需要修改函数定义不用修改接口,将实现细节从接口设计中分离出来。

在类声明中,如果成员是私有的,可以不使用private关键字,类对象的默认访问控制即为私有,其他程序不能直接访问,必须通过共有的类方法访问。如果是共有的,需要使用public关键字,并且可以通过类对象直接访问。

隐藏性体现有三方面:数据成员私有;类方法私有;类方法定义和声明放在不同的文件中。

类和结构的区别:类有成员函数;类分为public,private;类的默认方式是私有,结构的默认方式为公有。

成员函数在实现时,需要使用作用域解析符,并且类方法可以直接访问类的私有成员,包括数据成员和函数成员,不需要再用作用域解析符。定义在类声明中的函数,将成为内联函数。对不在类声明中定义的函数,如果想将其定义为内联函数,在定义前加上inline关键字。一般内联函数要求每个使用它的文件都要对其进行定义,所以最简单的方法是将其定义在头文件中。

创建类对象,通过类对象来调用类成员函数,允许将一个类对象直接赋值给另一个类对象。创建的每一个类对象,都有自己的存储空间,用于存储内部变量和类成员。对同一个类,所有的对象数据成员是独立存储的,但类方法共用一个,即执行同一个代码块,只是使用不同的数据。

如果在对象声明前加const,之后该对象调用的函数只能是在声明和定义时均加了const的函数。对于不修改对象数据成员的鳄梨方法,应将其声明为const类型。

相关文章: