我想检查类型T
是否也是参数包Ts
的一部分。在C++ 14中有这样做的solutions,但是如果这可以在C++ 17中简化,我就会游荡。如果在Ts
中找不到T
,则应停止编译器(static_assertion应该失败)。检查模板类型T是否属于C++中的变量参数包17
template<typename... Ts>
class A
{
template<typename T>
void action() {
// check that T is also in Ts (static_assertion)
}
}
您链接到该解决方案是5号线长。你在寻找多少简化? – Sneftel
我的问题[here](https://stackoverflow.com/questions/45578484/is-it-possible-to-get-the-first-type-of-a-parameter-pack-in-a-one-liner/45578533#45578533)有四条工作路线,答案只有一条。你在这里找到的解决方案是制作一个包中某些类型的vector元素的元组长度超过10行。它现在可以在一个。 – dani
@Sneftel,你走了。需要一行代码。 – dani