【发布时间】:2012-03-07 20:59:06
【问题描述】:
我现在坚持使用 C++03,我想创建一个全局函数,它可以接受任意数量的 type-safe 参数(如果需要,可以达到合理的限制,例如 9 )。
我可以访问我的代码库中的完整 boost 库,所以我希望 boost::mpl::vector 可以在这里有用。我也不希望这样写起来太不方便。调用站点的语法应该很简单,如下所示:
LogDebugMessage("Number of cats and dogs:", m_myPets->NumCats(), m_myPets->NumDogs());
以类型安全的方式实现这一点的最佳方法是什么?
编辑
我也意识到我可以为此使用模板特化,但我不想最终定义相同的结构 9 次,每个额外的模板参数一个。这太乱了。如果可能的话,我想避免这种情况。
【问题讨论】:
标签: c++ boost boost-mpl boost-tuples