|
|
 |
|
|
|
|
16: Normal() { Log(); }
17: virtual ~Normal() {}
18: virtual void Log() { cout << Logging normal conditions\n; }
19: };
20:
21: class Error : public Condition
22: {
23: public:
24: Error() {Log();}
25: virtual ~Error() {}
26: virtual void Log() { cout << Logging error!\n;}
27: };
28:
29: class Alarm : public Condition
30: {
31: public:
32: Alarm ();
33: virtual ~Alarm() {}
34: virtual void Warn() { cout << Warning!\n; }
35: virtual void Log() { cout << General Alarm log\n; }
36: virtual void Call() = 0;
37:
38: };
39:
40: Alarm::Alarm()
41: {
42: Log();
43: Warn();
44: }
45: class FireAlarm : public Alarm
46: {
47: public:
48: FireAlarm(){Log();};
49: virtual ~FireAlarm() {}
50: virtual void Call() { cout<< Calling Fire Dept.!\n; }
51: virtual void Log() { cout << Logging fire call.\n; }
52: };
53:
54: int main()
55: {
56: int input;
57: int okay = 1;
58: Condition * pCondition;
59: while (okay)
60: {
61: cout << (0)Quit (1)Normal (2)Fire: ;
62: cin >> input;
63: okay = input;
64: switch (input) |
|
|
|
 |
|
|
|
|
continues |
|
|
|
|
|