看板 C_and_CPP 關於我們 聯絡資訊
※ 引述《d5123 (dd)》之銘言: : 我用sizeof(array)/sizeof(array[0]); : 可得到此array之長度。 : 但如我我想寫成一個方法,只要將array名稱當作參數,即可得到array長度。 : 請問這該如何達成呢? template < class T, size_t N > size_t len ( T (&a)[N] ) { return N ; } int main () { int a[10] ; cout << len(a) << endl ; } -- To iterate is human, to recurse, divine. 遞迴只應天上有, 凡人該當用迴圈.   L. Peter Deutsch -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 118.160.111.250
LiloHuang:被搶先一步了 囧 06/05 23:23
d5123:thanks for your help~~ 06/05 23:41
uefang:小白好厲害... XDDD 06/05 23:49
world9918:看不懂= =..有人能解釋T (&a)[N]的意思嗎 06/05 23:52
LiloHuang:a是reference到一個型態為T的陣列, 其大小為N 06/06 00:08
QQ29:借問一下http://0rz.tw/8q9y0 這網頁是不是亂寫阿? 06/06 02:45
QQ29:查template找到這 compile都有問題 最下面main的 06/06 02:46
QQ29:createArrint 根本也沒這型態阿?? 還是這網頁別有用意 06/06 02:46
TroyLee:大概是論壇把一些 < > 弄掉了吧...要自己處理一下 06/06 02:52
QQ29:可是createArrint 這個根本沒寫阿?是有特殊寫法還是根本就遺 06/06 02:54
QQ29:漏呢!!? 06/06 02:54
TroyLee:他原本是 createArr<int> 吧? 06/06 10:54