initializer_list上的专门化功能模板不起作用?

时间:2014-01-22 14:24:10

标签: c++ c++11 initializer-list explicit-specialization

  

我知道专业化的功能模板是wrong

这个问题出于好奇心。

说我有一个功能模板

template<typename T>
void foo(T){}

我专注于它

template<>
void foo(std::initializer_list<int>){}

我称之为

foo({1, 2, 3});

我收到错误“没有匹配brac封闭的初始化列表的foo实例”指向主模板 (重载按预期工作正常)

但如果我将函数 base 模板更改为将initializer_list作为参数,则一切正常。

到底发生了什么?

编译器:gcc 4.8.2 helpful link

0 个答案:

没有答案