实验二 封装性(1)一、实验目的1. 掌握类的定义和使用。2. 掌握类的定义和对象的声明。3. 复习具有不同访问属性的成员的访问方式。4. 观察构造函数和析构函数的执行过程。5. 使用 VC++的 debug 调试功能观察程序流程,跟踪观察类的构造函数、析构函数、成员函数的执行顺序。二、实验任务定义一个 CPU 类,包含等级(rank)、频率(frequency)、电压(voltage)等属性,有 两 个 公 有 成 员 函 数 run 、 stop 。 其 中 , rank 为 枚 举 类 型 CPU_Rank , 定 义 为 enum CPU_Rank{P1=1,P2,P3,P4,P5,P6,P7},frequency 为单位是 MHz 的整型数,voltage 为浮点型的电压值。观察构造函数、析构函数、成员函数的调用顺序,在报告中写明,并说明构造函数和析构函数是何时调用的,是显式调用还是隐式调用的?三、实验步骤1. 首先定义枚举类型 CPU_Rank, enum CPU_Rank {P1=1,P2,P3,P4,P5,P6,P7},再定义 CUP 类,包含等级(rank)、频率(frequency)、电压(voltage)等私有数据成员,定义成员函数 run、stop,用来输出提示信息,在构造函数和析构函数中也可以输出提示信息。在主程序中定义一个 CPU 的对象,调用其成员函数,观察类对象的构造与析构顺序,以与成员函数的调用。程序名:lab2.cpp。2. 使用 debug 调试功能观察程序 lab2.cpp 的运行流程,跟踪观察类的构造函数、析构函数、成员函数的执行顺序。3. 调试操作步骤如下:(1)单击 Build | Start Debug | Step Into 命令,或按下快捷键 F11,系统进入单步执行状态,程序开始运行,一个 DOS 窗口出现,此时 Visual Studio中光标停在 main()函数的入口处,此时打开控制台窗口看看屏幕显示情况;(2)从 Debug 菜单或 Debug 工具栏中单击 Step Into(F11),此时,光标下移,程序准备执行 CPU 对象的初始化;(3)单击 Step Into,程序准备执行 CUP 类的构造函数;(4)连续单击 Step Into,观察构造函数的执行情况,直到执行完构造函数,然后程序会去执行一些系统自定义的函数,没必要跟踪系统函数,单击 Step Over(Shift+F11)返回,继续单击 Step Into(F11)跟踪自定义函数;如又遇到跟踪系统函数的情况则同样单击 Step Over(Shift+F11)返回,直到程序回到主函数,此时打开控制台窗口看看屏幕显示情况。(5)继续按 Step Into,此时程序准备执行 CPU 对象的 run()函数,单击 St...