No 11 預設實參的匹配

2021-09-21 08:19:39 字數 842 閱讀 9686

==【注意】==

程式語言只是我們與計算機交流並讓計算機實現我們創造性思想的工具,可以並鼓勵深入掌握一門語言,但千萬別沉迷於鑽某種語言的牛角尖,一定要把握好二者間的度

本帖屬不定時**貼,以試卷的形式提出乙個比較基礎的問題供大家思考討論,問題的解析將在下一更新貼中一併給出,這樣做是希望還不清楚問題的朋友有自己思考和討論的時間,希望大家能從這些帖子中有所收穫。

貼中問題屬我在學習c\c++過程中遇到的一些語法或者比較隱晦的程式問題,其中有自己的總結,也不乏網路上搜尋到的經典解析,在此分享給大家,希望能起到拋磚引玉的作用

我已認真檢查過自己的帖子,但難免有疏忽,如大家在閱讀過程中仍發現有問題,請及時通知

,我會及時更正,以免誤導大家,萬分感謝^_^

【no.11 c++預設實參的匹配順序】

由於**形式,每帖第二部分都配有上一問題的解答。為了保持帖子的針對性和一致性,

[問題11]

請寫出以下**中能夠通過編譯的行的結果,並指出會發生編譯錯誤的行

並說明原因:

複製內容到剪貼簿

**:#include

using namespace std;

void defaultarg(int a=24, int b=48, char c='c')

//首先用_j初始化_i,但是此時_j並沒有被初始化

//因此_j是乙個隨機值(而非k),所以_i被初始化

//為乙個隨機值,然後初始化_j=k

test(int k):_j(k), _i(_j){}

void print(void)

{cout<<"i = "<<_i<

預設實參的理解

一直受預設實參的困擾,可能還是自己太懶,查詢資料得出結論 將預設實參放在函式的宣告中,並且在函式定義中沒有預設實參 也就是說,函式實參只存在於宣告中.假定有三個檔案,分別為a.h,a.cpp,main.cpp class a includevoid a output char c c std cou...

LeetCode題解No11 「盛水最多的容器」

給你 n 個非負整數 a1,a2,an,每個數代表座標中的乙個點 i,ai 在座標內畫 n 條垂直線,垂直線 i 的兩個端點分別為 i,ai 和 i,0 找出其中的兩條線,使得它們與 x 軸共同構成的容器可以容納最多的水。說明 你不能傾斜容器,且 n 的值至少為 2。圖中垂直線代表輸入陣列 1,8,...

虛函式中的預設實參

c premier 先看例子吧 include iostream using namespace std class base class derived public base public int foo int ival 2048 cout cout cout 我是初學c 用編譯器執行突然發現...