c 中抽象類繼承的程式設計問題,一個C 中關於繼承性和派生類的程式設計問題,求思路

時間 2021-08-11 17:12:20

1樓:匿名使用者

#include

#define pi 3.1415926

class shape

~shape(){}

virtual void printshapename( )=0;

virtual void print( )=0;

virtual double getarea()=0;

virtual double getvolume( )=0;

};class point:public shape~point(){}

void printshapename( );

void print( ){}

double getarea() //新增double getvolume( ) //新增private:

double x,double y;

};class circle:public point~circle(){}

double getarea();

void printshapename( );

void print( ){}

private:

double radius;

};class cylinder:public circlevoid getcylinder(double a,double b)

void printshapename( );

void print( ){}

double getvolume();

private:

float radius,hight;

};double cylinder::getvolume()double circle::getarea()void point::

printshapename()void fun2(shape *p)

void fun3(shape *p)

void main()

你錯誤是因為你有兩個虛擬函式沒有實現。

抽象類中的虛擬函式在後面必須給出具體的實現,記住教訓啊

2樓:施小平

把類似這樣的語句

void printshapename( );

改為:virtual void printshapename( )

3樓:不ke愛

這個錯誤就是說 不能例項化point類..你宣告瞭純虛擬函式嘛,所以不能例項化

一個c++中關於繼承性和派生類的程式設計問題,求思路

4樓:

這個需要用到多型,也就是虛擬函式,父類vehicle有一個虛擬函式display,然後再子類中實現它就可以了,指標陣列應為父類指標型別

這個應該算是c++最基本的一種程式設計過程了,建議google虛擬函式來看看

c#中抽象類可以被繼承嗎?

c中怎麼定義類,c 中怎麼定義一個類

using system public class desk 基類desk 設定desk的資訊 public void setinfo int len,int wid,int hei 列印desk的引數資訊 public void showinfo t width t height length,w...

C 中,如何例項化類例項,C 中,如何例項化一個類例項

朋璣崇綺煙 例項化這個類如果不帶引數,需要寫個不帶引數的建構函式。一般不寫建構函式,系統會自動生成一個,但是由於你寫了一個帶引數的建構函式,系統不會自動生成,如果你不在程式中自己寫出來,那麼無法例項化。繼承這個類 class dog animal 加個冒號就可以了 test t 分配給例項 t 的是...

關於C 中類的問題,關於C 中類别範本的問題

include 標頭檔案以 h 結尾 using namespace std template class complex template void complex set t a,t b 類函式在函式體外定義要寫template 類名後要加,下面同此 template void complex ...