【发布时间】:2015-02-24 10:39:37
【问题描述】:
VS 2013 说它不能在以下代码中专门化函数模板:
struct W { };
template <class T>
typename T::result_type
f (const W & w, T && t) {
return 0;
}
/* ... */
struct V { typedef int result_type; };
W w {};
V v {};
f (w, v);
如果我用int 替换typename T::result_type,或者如果我用T& 替换通用引用T&&,它不会抱怨。
在我看来,上面的代码是正确的。这是编译器错误,还是我做错了什么?
【问题讨论】:
标签: c++ visual-studio-2013 universal-reference