c++ - 模板别名可以用于部分特化吗?

标签 c++ c++11 partial-specialization

给定模板别名

template<unsigned U>
using uint_ = integral_constant<unsigned,U>;

的偏特化

template<class T,class P>
struct size{};

作为

template <class T,unsigned U>
struct size<T,uint_<U>>{};

为 clang 3.1 生成警告,因为无法推导模板参数,而 gcc 4.7 不生成警告

那么,它是畸形代码吗?

最佳答案

代码在 C++11 中完美无缺。 Clang 的警告可以忽略。

关于c++ - 模板别名可以用于部分特化吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12157758/

相关文章:

c++11 - 需要使用 C++11 的确定性均匀分布

c++ - 二元运算符返回 Xvalue 而不是 PRvalue?

c++ - 使用模板特化拆分可变参数包

c++ - 使用 QTest 传递给 C 运行时函数的无效参数

c++ - 无法释放由 C++ 中的 CreateFileMapping 和 MapViewOfFile 创建的共享内存

C++ 数组衰减不会发生以供引用,为什么?

c++ - 指针的部分特化,C++

C++ 模板 : Partial Template Specifications and Friend Classes

c++ - dtoa vs sprintf vs Grisu3 算法

java - Steam 等跨平台桌面应用程序 - 可用的技术有哪些