我酷下载
您的位置:首页-> 技术文章-> -> Visual C++-> 《深入浅出mfc》摘要(二)

阅读排行




《深入浅出mfc》摘要(二)

作者general0690 来源未知 加入时间:2005-8-31 人气:159
1。這就合乎邏輯了:銷售員是一般職員的一種,他的薪水應該是以時薪職員的計薪方式作
為底薪,再加上額外的銷售佣金。我們看看實際情況,如果有一個銷售員:
CSales aSales("侯俊傑");
那麼侯俊傑的底薪應該是 :
aSales.CWage::computePay(); // 這是銷售員的底薪。注意語法。
而侯俊傑的全薪應該是 :
aSales.computePay(); // 這是銷售員的全薪
結論是:要呼叫父類別的函式,你必須使用 scope resolution operator(::)明白指出。

2.虚拟函数作用是将对象操作一般化。

「一般化」之所以重要,在於它可以把現在的、未來的情況統統納入考量

3.純虛擬函式不需定義其實際動作,它的存在只是為了在衍生類別中被重新定義

補充:CCircle 繼承了CShape 之後,如果沒有改寫 CShape 中
的純虛擬函式,那麼 CCircle 本身也就成為一個擁有純虛擬函式的類別,於是它也是一個抽象類別。


总结:

1。如果你期望衍生類別重新定義一個成員函式,那麼你應該在基礎類別中把此函
式設為 virtual。
2。以單一指令喚起不同函式,這種性質稱為 Polymorphism,意思是 "the ability to
assume many forms",也就是多型。
3。虛擬函式是 C++ 語言的 Polymorphism 性質以及動態繫結的關鍵。

4。既然抽象類別中的虛擬函式不打算被呼叫,我們就不應該定義它,應該把它設
為純虛擬函式(在函式宣告之後加上 "=0" 即可)。
5。我們可以說,擁有純虛擬函式者為抽象類別(abstract Class),以別於所謂的
具象類別(concrete class)。
6。抽象類別不能產生出物件實體,但是我們可以擁有指向抽象類別之指標,以便
於操作抽象類別的各個衍生類別。
7。虛擬函式衍生下去仍為虛擬函式,而且可以省略 virtual 關鍵字。




相关文章

相关软件

联系我们 广告服务 友情链接 版权说明 软件发布 下载帮助

CopyRight
2005-2016 www.5qcn.net All Rights Reserved 版权所有 【我酷】下载