C++ 函数重载碰到默认的参数
生活随笔
收集整理的這篇文章主要介紹了
C++ 函数重载碰到默认的参数
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
#include<iostream>
#include<string>
using namespace std;//引用作為重載的條件
void func(int &a) { //非常量引用cout << " this is func" << endl;
}void func(const int &a) { // 常量引用 const int &a = 10; 合法cout << "const this is func" << endl;
}//2函數重載碰到默認的參數
void func2(int a) {cout << "func2(int a)的調用"<< endl;
}void func2(int a, int b=10) {cout << " func2(int a, int b)的調用" << endl;
}
int main() {int a = 10;func(a);
// func(10);func2(a);func2(10);system(" pause");return 0;}
函數的重載注意事項:
只會根據三項內容進行重載:參數的個數、參數的類型、參數的順序
?
參數默認值:
參數的默認值可以在函數的定義中也可以在函數的聲明中,但不能同時有
從第一個有默認值的參數開始,后面都得有默認值
在調用具有默認參數的函數時, 若某個實參默認,其右邊的所有實參都應該默認
//例如, 一個函數聲明如下
int f(int i1 = 1, int i2 =2, int i3 = 3);
//調用函數 f()
f(); //正確, i1=1, i2=2, i3=3
f(3); //正確, i1=3, i2=2, i3=3
f(2, 3); //正確, i1=2, i2=3, i3=3
f(4, 5, 6); //正確, i1=4, i2=5, i3=6
f(, 2, 3); //錯誤, i1默認,其右邊的i2和i3沒有默認
?
總結
以上是生活随笔為你收集整理的C++ 函数重载碰到默认的参数的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【译】Ethereum Wallet i
- 下一篇: php 关闭电脑,php实现用手机关闭计