1樓:匿名使用者
當繼承關係自頂來至自
下出現菱形路線時,bai最底層的派生類必然du會重複繼承最頂zhi層基類的成dao員,所以定義虛基類是為了解決這種重複繼承的問題。抽象類是包含純虛擬函式的類,它不能定義物件,在類中定義虛擬函式是為了解決基類的指標能夠呼叫派生類的函式也就是所謂的「多型性」,讓一個命令實現多種響應。
2樓:匿名使用者
虛基類是相對bai於它的派生類du而言的,它本身可zhi以是一個普通的類dao。回
只有它的答派生類虛繼承它的時候,它才稱作虛基類,如果沒有虛繼承的話,就稱為基類。比如類b虛繼承於類a,那類a就稱作類b的虛基類,如果沒有虛繼承,那類b就只是類a的基類。
虛繼承主要用於一個類繼承多個類的情況,避免重複繼承同一個類兩次或多次。
例如 由類a派生類b和類c,類d又同時繼承類b和類c,這時候類d就要用虛繼承的方式避免重複繼承類a兩次。
而抽象類是指帶有有一個或一個以上的純虛擬函式的類。抽象類一般值用於繼承,不能定義類物件,但可以定義類指標和引用。
純虛類 和抽象類 有什麼關係
3樓:匿名使用者
c++裡沒有來
純虛類這麼一說,倒是源有虛基類這bai麼個說法,抽象類是指du包含一個純虛zhi函式的類,這種類不能被例項dao化,但允許宣告一個指向抽象類的物件的指標.抽象類派生的類如果不對基類的純虛擬函式進行重寫的話,派生類依然是一個抽象類,只有它重寫了其基類的純虛擬函式之後它才不再是一個抽象類
4樓:匿名使用者
抽象類 是指有純需函式的類,這種類只能作為基類使用
純虛類是什麼東西沒聽說過....
虛擬函式和虛基類的區別是什麼啊?
5樓:阿笨
虛擬函式 , 虛基類,它們都和virtual有關,這兩個帶有虛字的定義容易使人混淆,回下面先從作用答
上來解釋這兩個定義的區別:
1.虛擬函式是用於多型中virtual修飾父類函式,確保父類指標呼叫子類物件時,執行子類函式的。
2、.虛基類是用來在多繼承中,如果父類繼承自同一個父類,就只例項化一個父類(說的有點繞,就是隻例項化一個爺爺的意思。
具體區別登陸詳詢。
6樓:匿名使用者
虛基類j就是由虛擬函式這樣定義virtual f(...) = 0
這樣的類用來做介面,不能例項化,
虛擬函式明顯是用來表示類裡的介面動作的
7樓:匿名使用者
函式和類有相似之處?虛擬函式在派生類裡必須被實現,虛基類則一定包含純虛擬函式,不能被例項化,和介面有點相似。好好看看書吧
8樓:匿名使用者
我來更正一下 後面=0的叫純虛擬函式。
9樓:任魄百里天翰
虛擬函式主要是用來產生派生類與基類之間的多型性.
虛基類主要是用來解決多重派生引起的兩議性問題
在c++類中,有一種類不能生成物件只能被繼承,稱之為虛基類還是抽象類???
10樓:匿名使用者
在c++類中,有一種類不能生成物件只能被繼承,稱之為________。
答案應該是 「抽象類」 或者 「包含純虛擬函式的類」 。
11樓:匿名使用者
兩個概念沒有直接等價關係
抽象類不能被例項化,裡面一定包含純虛擬函式
虛基類是虛繼承的父類,class b:virtual a{}; a是虛基類
12樓:匿名使用者
可以回答抽象類/純虛類,含有純虛擬函式的類。
class a;
c++的問題,什麼是抽象類,抽象類有什麼特點。
13樓:匿名使用者
在c++中 含有純虛擬函式的類即為抽象類
抽象類不能被例項化,只能作為基類進行派生
純虛類和抽象類有什麼關係,純虛類是什麼
c 裡沒有來 純虛類這麼一說,倒是源有虛基類這bai麼個說法,抽象類是指du包含一個純虛zhi函式的類,這種類不能被例項dao化,但允許宣告一個指向抽象類的物件的指標.抽象類派生的類如果不對基類的純虛擬函式進行重寫的話,派生類依然是一個抽象類,只有它重寫了其基類的純虛擬函式之後它才不再是一個抽象類 ...
C的抽象類中,抽象方法和純虛擬函式區別
問題1 含有virtual修飾符的方法稱為虛擬方法。不能像你說的那樣定義。問題2 1 虛擬方專法,子屬類可以選擇性重寫此方法,也可以不重寫 而抽象 abstract 方法,子類必須重寫。2 虛擬方法可以有實體,如 public virtual void vt 所以,可以直接呼叫虛擬方法 而抽象方法不...
15關於純虛擬函式和抽象類的描述中,錯誤的是
c如果在派生類中沒有對純虛擬函式進行了定義,那這個派生類也是抽象類.不能用來定義物件 下述關於抽象類的描述中,錯誤的是?a.可以通過在類中定義純虛擬函式的方式定義抽象類 b.不可以建立 選c。建立類的引用,沒聽過,其他都對。選c,以下 編譯通過 class vclass int main 幾道c 選...