定义一个简单的Computer类,有数据成员芯片(cpu)、内存(ram)、光驱(cdrom),有两个公有成员函数Run()、Stop()。在main函数中定义Computer类的一个对象,测试这个类,分析成员函数的运行顺序。 实验要求: (1)类的组合概念,即Computer类的数据成员为CPU类的一个对象cpu, RAM类的对象ram,CDROM类的对象cdrom,各个类的定义见上述实验。 (2)要求在Computer类的成员函数Run( )中依次显示COMPUTER、CPU、RAM、CDROM开始运行的信息。Stop( )的显示信息与Run( )的运行次序严格相反,运行结果如下图所示。 #include
using namespace std; /*假设已定义好CPU、RAM、CDROM类(其具体代码见上述任务中的对应代码),在此任务编程时请自行补充完整;接着请在下面直接定义Computer类*/ class CPU { ......//代码如上,在此省略 }; class RAM { ......//代码如上,在此省略 }; class CDROM { ......//代码如上,在此省略 }; class Computer { private: (1) ; //定义Computer类的子对象cpu (2) ; //定义Computer类的子对象ram (3) ; //定义Computer类的子对象cdrom public: COMPUTER() { cout << "构造了一个COMPUTER!" << endl; } ~COMPUTER () { cout << "析构了一个COMPUTER!" << endl; } void Run() { cout << "COMPUTER开始运行!" << endl; (4) ( ); //cpu的运行(注意在此不能直接用输出语句输出CPU开始运行!) (5) ( ); // ram的运行(同上) (6) ( ); // cdrom的运行(同上) } void Stop() { (7) ( ); //computer各个部件停止运行。 (8) ( ); // 注意在此不能直接用输出语句输出各个部件停止运行! (9) ( ); // 各个部件停止运行的次序和开始运行的次序严格相反! cout << "COMPUTER停止运行!" << endl; } } int main() { COMPUTER a; a.Run(); a.Stop(); return 0; }