这段代码中的(&)-括号中的&符号是什么意思?

声子

此答案中,给出了以下代码(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] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章