【发布时间】:2022-01-16 04:45:52
【问题描述】:
template<typename T>
void print(T &t) {
cout << t << " ";
}
template<typename ...Ts>
void gogo(Ts&& ...agvs) {
int arr[] = { (print(agvs),0)... };
cout << "\n";
for (auto vi:arr)
cout << vi << " ";
}
template<typename ...Ts>
void go(Ts&& ...agv) {
gogo(forward<Ts>(agv)...);
}
以下是实际调用
我不明白这个(print(agvs),0)...
为什么会这样?
【问题讨论】:
-
您应该将调用这些函数的代码和输出作为文本添加到您的问题中。
-
注意:如果可用,它应该使用折叠表达式 (c++17) en.cppreference.com/w/cpp/language/fold
标签: c++ arrays templates initialization comma-operator