123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960 |
- #include <iostream>
- #include <string>
- 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 = P1, int f = 100, float v = 2.0) : rank(r), frequency(f), voltage(v) {
- std::cout << "one CPU is created!" << std::endl;
- }
- ~CPU() {
- std::cout << "one CPU is distoried!" << std::endl;
- }
- void display() {
- std::string rank_str;
- switch (rank) {
- case P1: rank_str = "P1"; break;
- case P2: rank_str = "P2"; break;
- case P3: rank_str = "P3"; break;
- case P4: rank_str = "P4"; break;
- case P5: rank_str = "P5"; break;
- case P6: rank_str = "P6"; break;
- case P7: rank_str = "P7"; break;
- default: rank_str = "Unknown Rank";
- }
- std::cout << "rank: " << rank_str << std::endl;
- std::cout << "frequency: " << frequency << std::endl;
- std::cout << "voltage: " << voltage << std::endl;
- }
- void run() {
- std::cout << "CPU is running!" << std::endl;
- }
- void stop() {
- std::cout << "CPU stop!" << std::endl;
- }
- };
- int main() {
- int rank_input, frequency_input;
- float voltage_input;
- std::cin >> rank_input >> frequency_input >> voltage_input;
- CPU myCPU(static_cast<CPU_Rank>(rank_input), frequency_input, voltage_input);
- myCPU.run();
- myCPU.display();
- myCPU.stop();
- return 0;
- }
|