概述
定义一个CPU类
属性变量(私有的 private):
(1)枚举类型CPU_Rank变量表示CPU的型号(枚举类型CPU_Rank在类外定义,其元素为i3,i5,i7)
(2)整型变量frequency表示CPU频率
(3)浮点型变量voltage表示CPU电压
成员函数(公有 public):
(1)添加CPU类的两个构造函数:无参(输出“正在默认构造对象”)和带参数的(用初始式列表的方式定义,并输出“正在构造对象”)。
(2)参照教材复制构造函数的例子,添加CPU类的复制构造函数(用初始式列表的方式定义,将对应的参数进行复制,并输出“正在复制构造对象”,)
(3)参照教材析构函数的例子,添加CPU类的析构函数(输出“正在删除对象”)
(1)CPU_Rank GetRank(),用于返回CPU型号
(2)int GetFrequency()函数,用于返回频率值
(3)float GetVoltage()函数,用于返回电压值
(4)SetRank(CPU_Rank r),用于设置类中的CPU_Rank变量
(5)SetFrequency(int f),用于设置类中的frequenc
#include <iostream>
using namespace std;
enum CPU_Rank{i3, i5, i7};
class CPU
{
private:
CPU_Rank rank; //CPU型号
int frequency; //CPU频率
float voltage; //CPU电压
public:
CPU() {cout << "正在默认构造对象" << endl;}
CPU(CPU_Rank Newrank, int Newfrequency, double Newvoltage) : rank(Newrank), frequency(Newfrequency), voltage(Newvoltage)
{ cout << "正在构造对象" << endl; }
CPU(CPU &a) : rank(a.rank), frequency(a.frequency), voltage(a.voltage){cout << "正在复制构造对象" << endl;}
~CPU(){cout << "正在删除对象" << endl;}
CPU_Rank GetRank() {return rank;} //用于返回CPU型号
int GetFrequency() {return frequency;} //用于返回频率值
float GetVoltage() {return voltage;} //用于返回电压值
void SetRank(CPU_Rank r) {rank = r;} //用于设置类中的CPU_Rank变量
void SetFrequency(int f) {frequency = f;} //用于设置类中的frequency变量
void SetVoltage(float v) {voltage = v;} //用于设置类中的voltage变量
void Print(); //用于输出CPU类的三个成员的值
void Run() {cout << "CPU开始运行!" << endl;}
void Stop() {cout << "CPU停止运行!" << endl;}
};
void CPU::Print()
{
CPU_Rank a = GetRank();
int b = GetFrequency();
float c = GetVoltage();
cout << a << endl << b << endl << c << endl;
}
//复制函数调用第二种情况
void func2(CPU p)
{
cout << p.GetRank() << endl;
}
//复制函数调用第三种情况
CPU func3()
{
CPU a(i3, 600, 6);
return a;
}
int main()
{
CPU computer1;
computer1.Print();
computer1.Run();
computer1.Stop();
CPU computer2(i5, 1000, 1.46);
computer2.Print();
computer2.Run();
computer2.Stop();
CPU computer3;
computer3.SetRank(i7);
computer3.SetFrequency(2000);
computer3.SetVoltage(1.21);
CPU computer4(computer3);
computer4.Print();
cout << "复制构造函数其余两种情况" << endl;
func2(computer4); //复制函数调用第二种情况
CPU a;
a = func3(); //复制函数调用第三种情况
a.Print();
return 0;
}
最后
以上就是怕黑早晨为你收集整理的简单CPU类设计的全部内容,希望文章能够帮你解决简单CPU类设计所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复