第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定

很奇怪,運行失敗卻代碼成功

#include <iostream>

#include <stdlib.h>

#include <string>

using namespace std;


/**

?* 定義移動類:Movable

?* 純虛函數:move

?*/

class Movable

{

public:

? ? virtual void move() = 0;

};


/**

?* 定義公交車類:Bus

?* 公有繼承移動類

?* 特有方法carry

?*/

class Bus : public Movable

{

public:

? ? virtual void move()

? ? {

? ? ? ? cout << "Bus -- move" << endl;

? ? }

? ??

? ? void carry()

? ? {

? ? ? ? cout << "Bus -- carry" << endl;

? ? }

};


/**

?* 定義坦克類:Tank

?* 公有繼承移動類

?* 特有方法fire

?*/

class Tank : public Movable

{

public:

? ? virtual void move()

? ? {

? ? ? ? cout << "Tank -- move" << endl;

? ? }


? ? void fire()

? ? {

? ? ? ? cout << "Tank -- fire" << endl;

? ? }

};


/**

?* 定義函數doSomething含參數

?* 使用dynamic_cast轉換類型

?*/

void doSomething(Movable *obj)

{

? ? obj->move();


? ? if(typeid(*obj) == typeid(Bus))??

? ? {

? ? ? ? Bus *bus = dynamic_cast<Bus *>(obj);

? ? ? ? bus->carry();

? ? }


? ? if(typeid(*obj) == typeid(Tank))

? ? {

? ? ? ? Tank *tank = dynamic_cast<Tank *>(obj);

? ? ? ? tank->fire();

? ? }

}


int main(void)

{

? ? Bus b;

? ? Tank t;

? ? doSomething(&b);

? ? doSomething(&t);

? ? return 0;

}


正在回答

6 回答

剛看了下我的vs里面外部依賴庫自帶typeinfo類

https://img1.sycdn.imooc.com//5d5a6f5b000126ea04500776.png

1 回復 有任何疑惑可以回復我~

我再visual studio中運行不用引用任何東西都可以,可能是編輯器運行時自動調用了什么類,而慕課網里面的網頁編輯器必須引用type_info類或者type_index類才可以運行成功。

1 回復 有任何疑惑可以回復我~

知道了,要加上頭文件 #include<typeinfo>

6 回復 有任何疑惑可以回復我~
#1

冰擬繞指柔

是的,還真是這樣。
2019-06-06 回復 有任何疑惑可以回復我~

怎么解決的


0 回復 有任何疑惑可以回復我~
#1

慕粉1469495939

就是沒加頭文件 typeinfo
2019-05-02 回復 有任何疑惑可以回復我~

已解決問題

0 回復 有任何疑惑可以回復我~

顯示的是

index.cpp:?In?function?'void?doSomething(Movable*)':
index.cpp:62:16:?error:?must?#include??before?using?typeid
?????if(typeid(*obj)?==?typeid(Bus))
????????????????^~~
index.cpp:62:34:?error:?must?#include??before?using?typeid
?????if(typeid(*obj)?==?typeid(Bus))
??????????????????????????????????^
index.cpp:68:16:?error:?must?#include??before?using?typeid
?????if(typeid(*obj)?==?typeid(Tank))
????????????????^~~
index.cpp:68:35:?error:?must?#include??before?using?typeid
?????if(typeid(*obj)?==?typeid(Tank))


0 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消
C++遠征之多態(tài)篇
  • 參與學習       66223    人
  • 解答問題       334    個

本教程將帶領大家體會面向對象三大特性中的多態(tài)特性

進入課程

很奇怪,運行失敗卻代碼成功

我要回答 關注問題
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號