作者GooLoo (平凡)
看板C_and_CPP
標題[問題] 參數會變
時間Mon Dec 5 15:05:24 2016
請問一下
void test (int a,int b){
e=a+b
}
誇號ab 這樣寫可以代兩個參數進去,
今天使用者輸入a b c可能就不能用了,
不曉得有沒有寫法可以解決這問題
常遇到這問題,如我SPI要輸出一對資料,
我建一個test(char a),但10筆呢?
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 114.137.15.192
※ 文章網址: https://webptt.com/m.aspx?n=bbs/C_and_CPP/M.1480921527.A.CD2.html
1F:→ uranusjr: 可以用 varargs 但你還是得想個方法知道總共有幾個 12/05 15:08
2F:推 CoNsTaR: 你可以做資料結構啊兄弟,type 一樣的話也有 array 可以 12/05 15:14
3F:→ CoNsTaR: 用啊 12/05 15:14
4F:→ Schottky: 變動參數不如array方便 12/05 15:34
5F:→ Schottky: 非要這樣幹就照一樓說的吧 12/05 15:35
6F:→ Schottky: 一般我只會在仿製printf風格時會用varargs 12/05 15:36
7F:推 Yshuan: 如果就只有a,b和a,b,c的話 直接overloading就好 12/05 15:57
8F:→ Caesar08: parameter pack? 12/05 16:40
9F:→ uranusjr: 他下面又舉了一個十筆的例子我覺得 overloading 不是解 12/05 16:40
10F:→ uranusjr: 雖然也是有人這樣搞啦, Qt 就常搞這種只有參數數量不一 12/05 16:42
11F:→ uranusjr: 樣的重載, 然後一次就十個... 12/05 16:42
12F:→ pttworld: 需要STL的容器,一定知道size,函式內處理。 12/05 17:11
13F:推 pili100: 推一F,用varargs 12/05 17:58
14F:推 chuegou: 使用者輸入abc?意思是你這個function的實作 12/05 19:09
15F:→ chuegou: 不想給人看到嗎? 12/05 19:09
16F:推 firejox: 用macro啊 12/06 00:21
17F:→ MOONRAKER: (1)到底是誰要使用。(2)array卡實在。 12/06 10:39
18F:→ hunandy14: 阿 是上次會唱歌的月亮 12/06 14:48
19F:→ MOONRAKER: 不是 那是幻覺 12/14 11:00