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

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定

繼承了父類的函數(shù)顯示未定義

Shape.h

#ifndef?SHAPE_H
#define?SHAPE_H


class?Shape
{
????public:
????????Shape();
????????~Shape();

????????virtual?double?calcArea();

????protected:

????private:
};

#endif?//?SHAPE_H

Shape.cpp

#include?"Shape.h"
#include<iostream>
using?namespace?std;

Shape::Shape()
{
????cout<<"Shape()"<<endl;
}

Shape::~Shape()
{
????cout<<"~Shape()"<<endl;
}

virtual?double?Shape::calcArea()
{
????cout<<"Shape::calcArea()"<<endl;
????return?0;
}

Circle.h

#ifndef?CIRCLE_H
#define?CIRCLE_H

#include?"Shape.h"


class?Circle?:?public?Shape
{
????public:
????????Circle(double?r);
????????~Circle();

????protected:
????????double?m_dR;

????private:
};

#endif?//?CIRCLE_H

Circle.cpp

#include?"Circle.h"
#include<iostream>
using?namespace?std;

Circle::Circle(double?r)
{
????cout<<"Circle"<<endl;
????m_dR?=?r;
}

Circle::~Circle()
{
????cout<<"~Circle()"<<endl;
}

double?Circle::calcArea()
{
????cout<<"Circle::calcArea()"<<endl;
????return?3.14*m_dR*m_dR;
}

Rect.h

#ifndef?RECT_H
#define?RECT_H

#include?"Shape.h"


class?Rect?:?public?Shape
{
????public:
????????Rect(double?width,double?height);
????????~Rect();

????protected:
????????double?m_dWidth;
????????double?m_dHeight;

????private:
};

#endif?//?RECT_H

Rect.cpp

#include?"Rect.h"
#include<iostream>
using?namespace?std;

Rect::Rect(double?width,double?height)
{
????cout<<"Rect()"<<endl;
????m_dWidth?=?width;
????m_dHeight?=?height;
}

Rect::~Rect()
{
????cout<<"~Rect()"<<endl;
}

double?Rect::calcArea()
{
????cout<<"Rect::calcArea()"<<endl;
????return?m_dHeight*m_dWidth;
}

demo.cpp

#include<iostream>
using?namespace?std;
#include?"Rect.h"
#include?"Circle.h"


int?main()
{
????Shape?*shape1?=?new?Circle(4.3);
????Shape?*shape2?=?new?Rect(2.0,3.0);

????shape1->calcArea();
????shape2->calcArea();

????delete?shape1;
????shape1?=?NULL;
????delete?shape2;
????shape2?=?NULL;

????system("pause");

????return?0;
}

error:

D:\code\C++\C++遠(yuǎn)征之多態(tài)\計(jì)算面積\src\Circle.cpp|16|error: no 'double Circle::calcArea()' member function declared in class 'Circle'|

求大神指導(dǎo)!!


正在回答

1 回答

Circle.h和Rect.h里沒有聲明calcArea()

0 回復(fù) 有任何疑惑可以回復(fù)我~
#1

臥龍絕圣 提問者

子類公有繼承的函數(shù)也必須聲明嗎,不應(yīng)該是調(diào)用父類函數(shù)嗎
2017-10-04 回復(fù) 有任何疑惑可以回復(fù)我~

舉報(bào)

0/150
提交
取消
C++遠(yuǎn)征之多態(tài)篇
  • 參與學(xué)習(xí)       66225    人
  • 解答問題       329    個(gè)

本教程將帶領(lǐng)大家體會(huì)面向?qū)ο笕筇匦灾械亩鄳B(tài)特性

進(jìn)入課程

繼承了父類的函數(shù)顯示未定義

我要回答 關(guān)注問題
微信客服

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

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)