类和对象

来源:互联网 发布:知乎粉丝排名 编辑:程序博客网 时间:2024/06/03 13:59

1.什么是类?

类是用用户定义的类型的定义。类声明了数据如何储存(数据类型)、用来访问和操作这些数据的方法(类方法或类成员函数)。
class className{private:    dataType dataName;//data member declarationspublic:    dataType functionName( ) const;//member function prototypes    ~className();};


例如,假设类players有一个名为score的成员函数,该函数返回int指针,则其函数头如下:
int *players:: score ( )
若该类有一个对象名为james,则 james调用成员函数score 时需要成员操作符句点:
cout<< james.score( );
类很适合用于描述抽象数据类型(ADT)。

2.类如何实现抽象、封装和数据隐藏?

抽象:人们用公有接口(类方法)对类对象执行操作。
封装:数据类型和类方法的代码都是隐藏的。
数据隐藏:类的数据成员是私有的(默认的情况下),意味着只能通过类方法来访问这些数据。通常,类声明(包括表示类方法的函数原型)的代码放在头文件里,成员函数的具体代码放在方法文件中,这便将接口实现和实现细节分开了。

3.类和对象是什么关系?

类定义了一种类型,包括如何使用它(类方法),对象是类的一个变量。

4.除函数之外,类成员函数和类数据成员的区别是什么?

如果创建给定类的多个对象,那么每个对象都有自己的数据内存空间,但所有的对象都使用用一组类成员函数。

5.类构造函数何时被调用?类析构函数呢?

前者是在创建类对象或显示调用构造函数时,后者是在对象过期时。析构函数的名称是在className前加~。

6.默认构造函数指的是什么?其好处何在?

指的是没有参数或者或所有参数都是默认值的构造函数。拥有默认构造函数,可以非初始化地声明对象变量。

7.this和*this是什么?

this是指针(对象的地址),指向用于调用方法的对象。*this是对象本身。

原创粉丝点击