一、实验目的
(1)掌握类的声明h和使用。
(2)掌握类的声明和对象的声明。
(3)复习具有不同访问属性的成员的访问方式。
(4)观察构造函数和析构函数的执行过程。
(5)学习类的组合使用方法。
(6)使用visual studio 2019以及Eclipse的Debug调试功能观察程序流程,跟踪观察类的构造函数、析构函数、成员函数的执行顺序。
二、实验任务
(1)声明一个CPU类,包含等级(rank)、电压(voltage)、频率(frequency)等属性,有两个公有成员函数run、stop。其中,rank为枚举类型CPU_Rank,声明为enum CPU_Rank {P1=1,P2,P3,P4,P5,P6,P7};frequency为单位是MHz的整型数,voltage为浮点型的电压值。观察构造函数和析构函数的调用顺序。
#include<iostream>
using namespace std;
enum CPU_Rank {P1=1,P2,P3,P4,P5,P6,P7};
class CPU
{
private:
CPU_Rank rank;
int frequency;
float voltage;
public:
CPU(CPU_Rank r,int f,float v)
{
rank=r;
frequency=f;
voltage=v;
cout<<"构造了一个CPU!"<<endl;
}
~CPU(){cout<<"析构了一个CPU!"<<endl;}
CPU_Rank GetRank() const {return rank;}
int GetFrequency() const {return frequency;}
float GetVoltage() const {return voltage;}
void SetRank(CPU_Rank r) {rank=r;}
void SetFrequency(int f) {frequency=f;}
void SetVoltage(float v) {voltage=v;}
void Run() {cout<<"CPU开始运行"<<endl;}
void Stop() {cout<<"CPU停止运行"<<endl;}
};
int main()
{
CPU a(P6,300,2.8);
a.Run();
a.Stop();
}