申論題內容
四、寫出下面 C++程式的執行結果。(執行結果共有五列輸出,請標明每列輸出的列號
與內容)(20 分)
#include
class A {
private:
static int count;
public:
A() {++count; };
virtual void methodOne() { cout << "A's methodOne" << endl; }
void methodTwo() { cout << "A's methodTwo" << endl; }
static void numberOfinstanceOfA() { cout<< “# of A’s instances:” << count << endl; }
~A() { --count; }
};
class B : public A{
public:
B() {};
virtual void methodOne() { cout << "B's methodOne" << endl; }
void methodTwo() { cout << "B's methodTwo" << endl; }
};
int A::count = 0;
void main()
{
A::numberOfinstanceOfA();
A *ptr = new B();
ptr->methodOne();
ptr->methodTwo();
A::numberOfinstanceOfA();
delete ptr;
A::numberOfinstanceOfA();
}