您好,登錄后才能下訂單哦!
這篇文章主要介紹了C++構造函數之參數缺省的示例分析,具有一定借鑒價值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。
前言:
構造函數中參數的值既可以通過實參傳遞,也可以指定為某些默認值,即如果用戶不指定實參值,編譯系統就使形參取默認值。在構造函數中也可以采用這樣的方法來實現初始化。
#include <iostream> using namespace std; class A { public : A(int aa=0,int bb=00); //在聲明構造函數時指定默認參數 int volume( ); int a; int b; }; int main( ) { A obj(4); cout<<obj.a<<" "<<obj.b; return 0; }
程序運行結果為
4 0
可以看到: 在構造函數中使用默認參數是方便而有效的,它提供了建立對象時的多種選擇,它的作用相當于好幾個重載的構造函數。
它的好處是: 即使在調用構造函數時沒有提供實參值,不僅不會出錯,而且還確保按照默認的參數值對對象進行初始化。尤其在希望對每一個對象都有同樣的初始化狀況時用這種方法更為方便。
關于構造函數默認值的幾點說明:
應該在聲明構造函數時指定默認值,而不能只在定義構造函數時指定默認值。
程序第5行在聲明構造函數時,形參名可以省略。
如果構造函數的全部參數都指定了默認值,則在定義對象時可以給一個或幾個實參,也可以不給出實參。
在一個類中定義了全部是默認參數的構造函數后,不能再定義重載構造函數。
感謝你能夠認真閱讀完這篇文章,希望小編分享的“C++構造函數之參數缺省的示例分析”這篇文章對大家有幫助,同時也希望大家多多支持億速云,關注億速云行業資訊頻道,更多相關知識等著你來學習!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。