欧美大屁股bbbbxxxx,狼人大香伊蕉国产www亚洲,男ji大巴进入女人的视频小说,男人把ji大巴放进女人免费视频,免费情侣作爱视频

歡迎來到入門教程網(wǎng)!

C語言

當前位置:主頁 > 軟件編程 > C語言 >

C++函數(shù)重載詳解及實例代碼

來源:本站原創(chuàng)|時間:2020-01-10|欄目:C語言|點擊: 次

C++函數(shù)的重載

定義

在同一個作用域中,函數(shù)名相同,函數(shù)的參數(shù)列表不同的函數(shù)之間構(gòu)成重載關(guān)系,在不同作用域中的同名函數(shù)遵循標識符隱藏的原則

ATTENTION:重載與函數(shù)的返回值類型無關(guān),因為聲明一個函數(shù)不需要返回類型,所以無法用來區(qū)分哪個函數(shù)

常函數(shù)和普通成員函數(shù)之間構(gòu)成重載,重載時常對象調(diào)用常成員函數(shù),一般對象調(diào)用一般成員函數(shù)

class A{
  …
  public:
    void getVal()const{…}
    void getVal(){…}
};
int main(){
  const A a;
  A b;
  a.getVal(); //常函數(shù)
  b.getVal(); //普通成員函數(shù)
}

不同namespace中的函數(shù)也可以通過名字空間指令/名字空間聲明的方式讓他們在同一個作用域,進而構(gòu)成重載關(guān)系
//overloaded functions in different namespaces

#include<iosteam>
using namespace std;
namespace ns1{
  void fa(int i){cout<<"in ns1:i="<<i<<endl;}
}
namespace ns2{
  void fa(double d){cout<<"in ns2:i="<<d<<endl;}
}
int main(){
  //使用namespace 指令的方式
  using namespace ns1;
  using namespace ns2;
  fa(10);
  fa(3.14);
  return 0;
}

重載匹配原則

完全匹配>常量轉(zhuǎn)換/常量匹配>升級轉(zhuǎn)換>標準轉(zhuǎn)換>自定義轉(zhuǎn)換>省略號匹配
Note:編程中,盡量做到完全匹配,如果實在不能完全匹配,一般會根據(jù)上述原則進行選擇

重載原理

C++編譯器是通過對函數(shù)進行換名,將參數(shù)列表信息體現(xiàn)在底層函數(shù)名中,從而實現(xiàn)函數(shù)的重載,匯編函數(shù)名按照 <作用域+返回類型+函數(shù)名+參數(shù)列表> 的方式體現(xiàn)在匯編中,eg:_Z4showii:

感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!

上一篇:常用的C語言排序算法(兩種)

欄    目:C語言

下一篇:C++中幾種將整數(shù)轉(zhuǎn)換成二進制輸出的方法總結(jié)

本文標題:C++函數(shù)重載詳解及實例代碼

本文地址:http://mengdiqiu.com.cn/a1/Cyuyan/2036.html

網(wǎng)頁制作CMS教程網(wǎng)絡(luò)編程軟件編程腳本語言數(shù)據(jù)庫服務(wù)器

如果侵犯了您的權(quán)利,請與我們聯(lián)系,我們將在24小時內(nèi)進行處理、任何非本站因素導(dǎo)致的法律后果,本站均不負任何責(zé)任。

聯(lián)系QQ:835971066 | 郵箱:835971066#qq.com(#換成@)

Copyright © 2002-2020 腳本教程網(wǎng) 版權(quán)所有