郑莉C++程序设计实验 第四章
例一:声明一个CPU类,包含等级(rank)、频率(frequency)、电压(voltage)等属性,有两个公有成员函数run、stop。
其中,rank为枚举类型CPU_Rank,声明为enum CPU_Rank {P1=1,P2,P3,P4,P5,P6,P7},frequency为单位是MHz的整型数,voltage为浮点型的电压值。(注意不同访问属性的成员访问方式,并观察构造函数和析构函数的调用顺序)
#include
using namespace std;
enum CPU_Rank{P1=1,P2,P3,P4,P5,P6,P7}; //定义一个枚举类型
class CPU
{
private:
CPU_Rank rank;
int frequency;
float volatage;
public:
CPU(CPU_Rank r, int f, float v)
{
rank = r;
frequency=f;
volatage = v;
cout << “构造了一个CPU” << endl;
}
~CPU() { cout << "析构了一个CPU" << endl; }
CPU_Rank GetBank() const { return rank; } //外部接口函数
int GetFrequency() const { return frequency;}
float GetVoltage() const { return volatage; }
void SetRank(CPU_Rank r)
{
rank = r;
}
void SetFrequency(int f) { frequency = f; }
void SetVoltage(float v) { volatage = v; }
void Run() { cout << "CPU开始运行" << endl; }
void Stop() { cout << "CPU停止运行" << endl; }
};
int main()
{
CPU a(P6, 300, 2.8);
a.Run();
a.Stop();
return 0;//在执行这条语句之前,会调用析构函数
}
例2:类似的,声明一个RAM类,CDROM类,在此基础上,再声明一个Computer类。其中,声明私有成员cpu、ram、cdrom,声明公有成员函数run、stop,可在其中输出提示信息;在main()函数中声明一个Computer类的对象,调用其成员函数。