假设我有这两个定义。
template<typename... Ts>
struct S{};
template<auto... Ts>
struct S{};
这两个定义有什么区别?
我们什么时候应该选择一个或另一个?
最佳答案
他们有不同的目的,前者允许
S<int, char, float> s;
后者(仅自 C++17 起可用)允许
S<42, '*', 42U> s;
关于c++ - typename参数包和auto参数包的区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66460463/