考虑以下功能:
template<typename... List>
inline unsigned int myFunction(const List&... list)
{
return /* SOMETHING */;
}
除了 /* SOMETHING */
之外,为了返回所有参数的 sizeof
的总和,最简单的是什么?
例如 myFunction(int, char, double) = 4+1+8 = 13
最佳答案
在 C++17 中,使用折叠表达式:
template<typename... List>
inline constexpr unsigned int myFunction(const List&... list)
{
return (0 + ... + sizeof(List));
}
关于c++ - sizeof 可变参数模板(所有元素的 sizeof 之和),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12666761/