【问题描述】声明一个CPU类。包含等级(rank)、频率(frequency)、电压(voltage)等属性,有两个公有成员函数run、stop,分别提示“CPU开始运行!”和“CPU停止运行!”。其中,rank为枚举类型CPU_Rank,声明为enum CPU_Rank{ P1=1, P2, P3, P4, P5, P6, P7 }; frequency为单位是MHz的整型数,voltage为浮点型的电压值。用2个CPU对象进行测试观察构造函数和析构函数的调用顺序。
【输入形式】输入CPU的等级,1表示P1,3代表P3
【输出形式】CPU对象的相关信息:构造函数、析构函数的调用情况,CPU对象的运行状况及CPU的等级
【样例输入1】
2 5
【样例输出1】
构造了一个CPU!
构造了一个CPU!
CPU开始运行!
等级为:2
CPU停止运行!
CPU开始运行!
等级为:5
CPU停止运行!
析构了一个CPU!
析构了一个CPU!
【样例输入2】
1 7
【样例输出2】
构造了一个CPU!
构造了一个CPU!
CPU开始运行!
等级为:1
CPU停止运行!
CPU开始运行!
等级为:7
CPU停止运行!
析构了一个CPU!
析构了一个CPU!
【样例说明】
【评分标准】 3个评分点
代码如下:
//CPU类的声明与使用
#include <iostream>
using namespace std;
//CPU等级:枚举型声明
enum CPU_Rank { P1=1, P2, P3, P4, P5, P6, P7 };
//CPU类的声明
class CPU
{
public:
CPU(CPU_Rank rank, int frequency, float voltage){
rank_ = rank;
frequency_ = frequency;
voltage_ = voltage;
cout << "构造了一个CPU!" << endl;
}
~CPU(){
cout << "析构了一个CPU!" << endl;
}
void run(){
cout << "CPU开始运行!" << endl;
cout << "等级为:" << rank_ << endl;
}
void stop(){
cout << "CPU停止运行!" << endl;
}
private:
CPU_Rank rank_;
int frequency_;
float voltage_;
};
//测试
int main()
{
int rank, frequency;
cin >> rank >> frequency;
CPU cpu1((CPU_Rank)rank, 1000, 1.2);
CPU cpu2((CPU_Rank)frequency,1000, 1.3);
cpu1.run();
cpu1.stop();
cpu2.run();
cpu2.stop();
return 0;
}