在此答案中,给出了以下代码(C ++ 11):
template <typename T, size_t N>
constexpr size_t size_of(T (&)[N]) {
return N;
}
(&)
在这种情况下是什么意思?很难找到这种东西。
它是这样的简写:
template <typename T, size_t N>
constexpr size_t size_of(T (&anonymous_variable)[N]) {
return N;
}
在函数中,您实际上不需要变量的名称,只需要模板推导即可N
-因此我们可以选择忽略它。语法上必须加上括号,才能按引用传递数组-您不能按值传递数组。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句