C++重寫,重載,重定義

ObjectDiagram1.png
//
//  main.cpp
//  C++重載重寫重定義
//
//  Created by 扆佳梁 on 16/8/2.
//  Copyright ? 2016年 Eric. All rights reserved.
//

#include <iostream>
using namespace std;

class Parent{
public:
    void abc(){
        cout<<"abc"<<endl;
    }
    
    virtual void func(){
        cout<<"func() do"<<endl;
    }
    virtual void func(int i){
        cout<<"func() do ..."<<i<<endl;
        
    }
    
    void func(int i,int j){
        
        cout<<"func() do ..."<<i<<" "<<j<<endl;
    }
    
    virtual void func(int i,int j,int m,int n){
        cout<<"func() do "<<i<<" "<<j<<m<<n<<endl;
    }
    
};

class Child:public Parent{
public:
    void abc(){
        cout<<"child abc"<<endl;
    }
    
    void func(int i,int j){
        cout<<"child func do "<<endl;
    }
    
    virtual void func(int i,int j,int k){
        cout<<"child func(int i,int j,int k)"<<endl;
    }
    
};

int main(int argc, const char * argv[]) {
    // insert code here...
    std::cout << "Hello, World!\n";
    
    Child c1;
    //c1.func()會(huì)報(bào)錯(cuò)
//1 C++編譯器 看到func名字 ,因子類中func名字已經(jīng)存在了(名稱覆蓋).所以c++編譯器不會(huì)去找父類的4個(gè)參數(shù)的func函數(shù)
//2 c++編譯器只會(huì)在子類中,查找func函數(shù),找到了兩個(gè)func,一個(gè)是2個(gè)參數(shù)的,一個(gè)是3個(gè)參數(shù)的.
//3 C++編譯器開始報(bào)錯(cuò).....  error C2661: “Child::func”: 沒有重載函數(shù)接受 4 個(gè)參數(shù)
//4 若想調(diào)用父類的func,只能加上父類的域名..這樣去調(diào)用..

    c1.Parent::func();
    c1.func(1, 2);
    Parent *p = NULL;
    p = &c1;
    p->abc();
    
     return 0;
}
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 一、重載(overload) 指函數(shù)名相同,但是它的參數(shù)表列個(gè)數(shù)或順序,類型不同。但是不能靠返回類型來判斷。 (1...
    Pitfalls閱讀 3,673評(píng)論 0 1
  • http://www.cnblogs.com/feiguo/archive/2013/11/29/3449352....
    胡天奕閱讀 577評(píng)論 0 0
  • 重載(overload) 重載函數(shù)是函數(shù)的一種特殊情況。為方便使用,C++允許在同一范圍中聲明幾個(gè)功能類似的同名函...
    FlyingPenguin閱讀 626評(píng)論 0 0
  • 年少不聽李宗盛。 小的時(shí)候只覺得李宗盛式的唱法很怪異,直到他的山丘被胡彥斌翻唱之后,才明白曲中字字句句透露著人生的...
    a5126be9d8d9閱讀 296評(píng)論 0 0
  • 水彩。中午休息時(shí)間畫的,三個(gè)中午。 吳竹和秋宏齋毛筆~
    3ca57119cf41閱讀 301評(píng)論 4 7

友情鏈接更多精彩內(nèi)容