类的组合:computer

#include
using namespace std;
enum RAM_Type {DDR2=2, DDR3, DDR4};
enum CPU_Rank {P1,P2,P3,P4,P5,P6};
enum ROM_Type{SATA,USB};
enum ROM_Installation{external,builtin};
class RAM
{
private:
enum RAM_Type type;
int frequency;
int size;
public:
    RAM(RAM_Type t,int f,int s)
    {
        type=t;
        frequency=f;
        size=s;
        cout<<"构建了一个RAM!"<     }
void Run()
{
    cout<<"RAM启动!"< void Stop()
{
    cout<<"RAM停止!"<

}
void print()
{
    cout<<"RAM版本为"<

}
~RAM(){cout<<"析构了一个RAM!"< };
class CPU
{
private:
enum CPU_Rank rank;
int frequency;
int voltage;
public:
CPU(CPU_Rank r,int f,int v)
{
    rank=r;frequency=f;voltage=v;
    cout<<"构建了一个CPU!"< }
void Run()
{
    cout<<"CPU启动!"< void Stop()
{
    cout<<"CPU停止!"<

}
void print()
{
    cout<<"CPU等级为"<

}
~CPU()
{cout<<"析构了一个CPU!"<

};
class ROM
{
private:
    enum ROM_Type type;
    enum ROM_Installation installation; 
    int size;
public:
    ROM(ROM_Type t,ROM_Installation i,int s)
    {
        type=t;installation=i;size=s;
        cout<<"构建了一个ROM!"<     }
void Run()
{
    cout<<"ROM启动!"< void Stop()
{
    cout<<"ROM停止!"<

}
void print()
{
    cout<<"ROM接口类型为"<

}
~ROM()
{cout<<"析构了一个ROM!"< };
class Computer
{
private:
    CPU cpu;
    RAM ram;
    ROM rom;
public:
    Computer(CPU c,RAM a,ROM o):cpu(c),ram(a),rom(o)
    {
        cout<<"构建了一个Computer!"<     }
    void Run()
{    cpu.Run();
    ram.Run();
    rom.Run();
    cout<<"Computer启动!"< void Stop()
{    cpu.Stop();
    ram.Stop();
    rom.Stop();
    cout<<"Computer停止!"<

}
void print()
{
    cpu.print();
    ram.print();
    rom.print();
    cout<<"这台电脑不能吃鸡!"< }
};
int main()
{
    CPU a(P1,1333,5);
    RAM b(DDR4,1333,8);
    ROM c(SATA,external,500);
    Computer d(a,b,c);
    d.Run();
    d.print();//枚举类型只能输出整数 不能输出常量名
    d.Stop();
return 0;

}

 

类的组合:computer_第1张图片输出的构造和析构次数不一样是因为

你可能感兴趣的:(c/c++)