小编Raf*_*llo的帖子

如何使我的 sizeof sum 结构与空参数包一起工作

我有这个可变参数结构来确定传入的所有类型的大小总和:

template <typename U, typename... T> struct TotalSizeOf 
    : std::integral_constant<size_t, sizeof(U) + TotalSizeOf<T...>::value> {};

template <typename U> struct TotalSizeOf<U> 
    : std::integral_constant<size_t, sizeof(U)> {};
Run Code Online (Sandbox Code Playgroud)

用法: TotalSizeOf<double, int, char>::value

问题是,我如何修改它以允许它处理空参数包,返回0;

例如 TotalSizeOf<>::value

目前,我收到错误 error: wrong number of template arguments (0, should be at least 1)

我只有 C++14 可用。

c++ c++14

8
推荐指数
2
解决办法
183
查看次数

标签 统计

c++ ×1

c++14 ×1