【发布时间】:2013-01-04 09:34:38
【问题描述】:
为什么这不起作用?
#include <vector>
struct A {
template <typename T> void f(const std::vector<T> &) {}
};
int main() {
A a;
a.f({ 1, 2, 3 });
}
【问题讨论】:
-
因为它无法从裸括号列表初始化器中派生类型信息。
a.f<int>({1,2,3});应该可以工作。