【发布时间】:2012-02-17 05:23:47
【问题描述】:
我希望将以下方法作为任何数组的通用方法,
int arrayLength(`anyType` array[])
{
return sizeof(array) / sizeof(array[0]);
}
然而,C++ 似乎根本不允许类型有任何歧义,
为什么会这样,我应该如何解决它?
【问题讨论】:
-
template<typename T, std::size_t N> std::size_t arrayLength(T (&)[N]) { return N; } -
@ilgjarn 你能不能完整地向我解释你的代码,即把它拼出来,就像我是一个完全的傻瓜一样,因为我真的很想了解它所做的一切, 谢谢
-
@Sebastian :在我看来,您链接到的答案中已经详细解释了。
标签: c++ arrays types ambiguity