![]() |
1
6
单一类型的组合列表
现在,如果我们把它包装成一个单独的元函数,并对初始类型列表的所有类型调用它,我们得到:
编辑:回答第二个问题:
然后我们需要定义一个元函数,它试图在给定的列表中找到给定的元素:
现在,可以利用它来构建一个新列表,确保没有插入重复的列表:
编辑:如@rafak概述的轻微更正 |
![]() |
2
2
好问题。有很多有趣的方法可以解决这个问题。这里有一个。
所有不合格的名字都在
|
![]() |
3
0
我最近也在做一些元编程,你有没有研究过boost::mpl::set?这将消除重复。至于组合,这听起来像映射,那么boost::mpl::map呢?请注意,对序列可以接受的类型的限制有一些库限制,尽管这可以用宏进行调整,但您仍然受编译器上限的支配,具体取决于需要处理的类型数。 |