看板 C_and_CPP 關於我們 聯絡資訊
我函數第一個參數是個固定的 int 型態 , 後面就是不定參數 , 包含 int long string 但是參數個數不一定 foo(int, ...); // 呼叫的函數 下面兩組程式碼要先定出參數個數 ?? 但是因為是不定參數輸入會幾個不知道, 只確定 輸入的型態是 int long string 這三種 , 這樣要怎麼處理? template < typename T0 > void foo( T0 ); template < typename T0, typename T1 > void foo( T0, T1 ); 謝謝 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 123.204.100.156
loveme00835:拿上面的模板來說, 我問你 foo(1) 跟 foo(1,2) 各會呼 04/27 22:00
loveme00835:哪一個模板產生的實體? 傳進來的參數個數在呼叫的時候 04/27 22:00
loveme00835:就已經知道, 然後就可以分派給不同的函數做事情, 對不 04/27 22:01
loveme00835:同函式而言, 它們自己知道有幾個, 這個是 overloading 04/27 22:02
loveme00835:的基本概念 04/27 22:02
loveme00835:你要真用一個函式去解決, 那麼就要有union +type code 04/27 22:03
loveme00835:的心理準備, 參數就變成一個指標或是 vector<T> 04/27 22:04