About a C++ program

#include

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 << "Constructed a CPU!" << endl;

< p> }

CPU()

{

cout << "Constructed a CPU!" << endl;

} ;

~CPU ()

{

cout << "Destructed a 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 starts running!" << endl; }

void Stop() {cout << " CPU stopped running!" << endl; }

};

class RAM

{

public:

< p> RAM ()

{

cout << "Constructed a RAM!" << endl;

}

~ RAM ()

{

cout << "Destructed a RAM!" << endl;

}

void Run () {cout << "RAM starts running!" << endl; }

void Stop() {cout << "RAM stops running!" << endl; }

};

class CDROM

{

public:

CDROM (){ cout << "Constructed a CDROM!" < < endl; }

~CDROM ()

{

cout << "Destructed a CDROM!" << endl;

< p> }

void Run() {cout << "CDROM starts running!" << endl; }

void Stop() {cout << "CDROM stops running!" << endl; }

};

class COMPUTER

{

private:

CPU cpu;

RAM ram;

CDROM cdrom;

public:

COMPUTER()

{

cout << "Constructed a COMPUTER!" << endl;

}

~COMPUTER ()

{

< p> cout << "Destructed a COMPUTER!" << endl;

}

void Run()

{

cout << "COMPUTER starts running!" << endl;

cpu.Run();

ram.Run();

}

void Stop()

{

ram.Stop();

cpu.Stop();

cout << "COMPUTER stopped running!" << endl;

}

};

int main()

{< /p>

COMPUTER a;

a.Run();

a.Stop();

}