回分類題庫
d293: 105OOP Lab Exercise: Run-Time Type Identification
出處:

Difficulity : N/A
Accepted : 55 Times | Submit :68 Times | Clicks : 355
Accepted : 49 Users | Submit : 49 Users | Accepted rate : 100%
Time Limit :10000 ms | Memory Limit : 64000 KBytes
題目加入時間 : 2016-12-14 13:46

Content :

請依照下面程式碼,實作一個父類別Base及兩個繼承Base的子類別Derived1, Derived2。並實作showWho的函式。

showWho函式一開始先呼叫共同的函式foo,如果是Derived1物件印出"Derived1",如果是Derived2物件印出"Derived2",並換行。

接著,當傳入參數為Derived1的物件指標時,呼叫Derived1自己獨有的函式callOne,印出"I'm Derived1 object.",並換行。

當傳入參數為Derived2的物件指標時,呼叫Derived2自己獨有的函式callTwo,印出"I'm Derived2 object.",並換行。

 

主程式請不要更改。

程式碼如下:

=================================

#include <iostream> 

#include <typeinfo> 

using namespace std; 

 

class Base { 

    public: 

        virtual void foo() = 0;

}; 

 

class Derived1 : public Base { 

    /* TODO */

}; 

 

class Derived2 : public Base { 

    /* TODO */

}; 

 

void showWho(Base *base) {

    /* TODO */

}

 

int main() { 

    Derived1 derived1;

    Derived2 derived2; 

 

    showWho(&derived1);

    showWho(&derived2);

 

    return 0;

}

 

Input :

No Input.

Output :

Derived1
I'm Derived1 object.
Derived2
I'm Derived2 object.

Sample Input :

No Input.

Sample Output :

Derived1
I'm Derived1 object.
Derived2
I'm Derived2 object.

Hint :


  

Author :

(管理員:oopTA)

  Solve it!   Status Forum (0)

C++
C
JAVA
77250. oop104703024 (4 ms , 312KB)
77217. oop104703035 (4 ms , 312KB)
77211. y860318 (4 ms , 314KB)
77203. oop104703014 (4 ms , 304KB)
77199. oop104703036 (4 ms , 310KB)
77059. oop104703045 (4 ms , 156KB)
77056. oop104703045 (8 ms , 156KB)
沒有解題記錄

執行時間會受很多因素影響因此僅供參考,主機等級請看這裡