C++詳解默認參數(shù)的構造函數(shù)及簡單實例代碼
現(xiàn)在給大家介紹下 有默認參數(shù)的構造函數(shù):
大家知道函數(shù)獲取形參的時候是通過函數(shù)調(diào)用時在實參里獲得的,因此我們必須保證 實參的個數(shù) 和 形參的個數(shù)必須相同。而且有些情況下我們對于實參或許都是個固定的值。例如 我們需要計算長方形的面積 長x寬 但是用戶可以不輸入長 而且如果用戶指定的情況下默認的長為 3,但是如果用戶指定了則使用用戶指定的寬 這就是用到默認參數(shù)了!
代碼:
#include <iostream> using namespace std; int area(int l,int w=3);// 函數(shù)聲明 并定義默認參數(shù)w=3; int main(){ int c=4; //長 int k=5; int res; //結(jié)果 res = area(c); cout<<res<<endl; return 0; } int area(int l,int w){//函數(shù)定義 l長 w寬 int res=0; res = l*w; return res; }
例如上面的代碼,如果我們像在8行 res=area(c); 這里沒有寫成 res=area(c,w);則表示 不指定寬是多少,所以如果寫成了 后面這樣則說明用戶指定了這個長方形的寬 為5;那么兩者的結(jié)果就是不同的!
前者額結(jié)果為 12
后者的記過為 20
這就是默認參數(shù)的函數(shù) 和 沒有默認參數(shù)函數(shù)的區(qū)別;
下面的習題:
設計函數(shù),計算長方體的體積 和 長方形的面積
如果用戶指定了三個參數(shù)則計算長方體的 體積 如果用戶輸入2個參數(shù)則計算長方形面積!
利用到含有默認參數(shù)的構造函數(shù);
參考代碼:
#include "stdafx.h" #include <iostream> #include <cmath> using namespace std; int area(int l,int w,int h=1);// 函數(shù)聲明 并定義默認參數(shù)w=3; int main(){ int c=4; //長 int k=5;//寬 int h=2;//高 int res; //結(jié)果 res = area(c,k); int res2=area(c,k,h); cout<<"面積為 ="<<res<<endl; cout<<"體積為 ="<<res2<<endl; return 0; } int area(int l,int w,int h){//函數(shù)定義 l長 w寬 int res=0; res = l*w*h; return res; }
感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!
相關文章
c++項目中后綴名vcxproj和sln的區(qū)別及說明
這篇文章主要介紹了c++項目中后綴名vcxproj和sln的區(qū)別及說明,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2024-05-05QTableWidget設置只讓某一列可編輯的實現(xiàn)
本文介紹了如何將QTableWidget的某一列設置為可編輯,以便用戶可以輸入自定義數(shù)據(jù),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2023-08-08C++內(nèi)存四區(qū)之代碼區(qū)、全局區(qū)、棧區(qū)和堆區(qū)
C++編譯器會把代碼直接分為四個小區(qū),弄懂這四小區(qū)對我們理解內(nèi)存有所幫助,所以下面這篇文章主要給大家介紹了關于C++內(nèi)存四區(qū)之代碼區(qū)、全局區(qū)、棧區(qū)和堆區(qū)的相關資料,需要的朋友可以參考下2021-07-07MATLAB算法技巧和實現(xiàn)斐波那契數(shù)列的解決思路
這篇文章主要介紹了MATLAB算法技巧和實現(xiàn)斐波那契數(shù)列,這篇主要說一下自己在算法設計課上用matlab做的兩道算法題,題目解起來都比較簡單,但是需要些技巧,需要的朋友可以參考下2022-12-12C語言數(shù)據(jù)結(jié)構之線索二叉樹及其遍歷
這篇文章主要介紹了C語言數(shù)據(jù)結(jié)構之線索二叉樹及其遍歷的相關資料,為了加快查找節(jié)點的前驅(qū)和后繼。對二叉樹的線索化就是對二叉樹進行一次遍歷,在遍歷的過程中檢測節(jié)點的左右指針是否為空,如果是空,則將他們改為指向前驅(qū)和后繼節(jié)點的線索,需要的朋友可以參考下2017-08-08