【发布时间】:2017-08-09 15:15:48
【问题描述】:
我想检查类型T 是否也是参数包Ts 的一部分。在 C++14 中有 solutions 可以做到这一点,但如果这可以在 C++17 中简化,我正在徘徊。如果在Ts 中找不到T,编译器应该停止(static_assertion 应该失败)。
template<typename... Ts>
class A
{
template<typename T>
void action() {
// check that T is also in Ts (static_assertion)
}
}
【问题讨论】:
-
您链接到的解决方案是 5 行长。您希望简化多少?
-
我的问题here 有四个工作行,答案只有一个。您在此处找到的用于制作包中某些类型的
vectors 的tuple的解决方案超过 10 行。它现在可以合二为一了。 -
@Sneftel,给你。单线。
-
我确实去了。 :)
标签: c++ variadic-templates c++17