获取未知数组长度的最简单方法是什么?

erb*_*bal 1 c++

我有一个函数可以对数组进行一些计算,但它必须知道数组的大小.如果我的函数只有数组本身,没有大小,我怎么能得到它?

是否可以在多维数组上执行此操作?

Mar*_*tos 7

一种方法是使用模板:

template <size_t N>
void foo(int (&array)[N]) {
    ?
}

int main() {
    int array[] = {5, 4, 3, 2, 1};
    foo(array);
}
Run Code Online (Sandbox Code Playgroud)

请注意,这仅在调用者在编译时知道数组的大小时才有效.