use*_*370 5 c++ template-specialization variadic-templates c++11 c++17
我认为下面的代码是有效的 C++11,但 GCC (g++ (GCC) 8.0.0 20170528) 拒绝它;报告该变量的f类型不完整。但它确实使用该-std=c++17标志进行编译。谁能告诉我为什么?
#include <type_traits>
template <class> struct Foo;
template <
template <template <class ...> class> class MM,
template <class...> class M
>
struct Foo<MM<M>> {};
template <template <class ...> class, class...>
struct Bar { };
Foo<Bar<std::add_pointer>> f;
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
341 次 |
| 最近记录: |