C/C++ 中求数组长度

来源:互联网 发布:淘宝网开网店步骤 编辑:程序博客网 时间:2024/06/03 23:51
//main.cpp#include <iostream>using namespace std;template <typename T, int N>int getSize(T(&input)[N]) {    return sizeof(input) / sizeof(T);}int main() {    int A[4] = { 3, 2, 1, 5 };    cout << getSize(A) << endl;   // ->4    return 0;    }

直接传数组名的话,会退化成指针,sizeof(input)不能获得数组长度。
所以要传引用,但传引用必须需要长度,所以用int N占位。

0 0
原创粉丝点击