如何在varargs构造函数的初始值设定项列表中初始化向量?

刺柏

我需要详细说明以下类的构造函数:

class Foo {
public:
    const std::vector<Bar> bars;
    Foo(int num_bars, ...);
}

为了讨论的缘故,假定额外的争论是全部const Bar&或公正的Bar

我需要使用va_list中的条来初始化v on construction。我怎样才能做到这一点?

普拉丹

你不能 制作Foo可变参数的模板:

template <typename ...ArgumentTypes>
Foo(ArgumentTypes&& args...):
bars({std::forward<ArgumentTypes>(args)...})
{
}

这使用了向量的initializer-list构造函数。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何使用构造函数初始值设定项列表中的n个元素初始化std :: vector <std :: time_t>

如何通过C ++中的函数参数传递固定大小的初始值设定项列表的初始值设定项列表?

如何在构造函数中初始化列表?

启用默认的初始值设定项列表构造函数

构造函数初始值设定项列表中的非成员初始化

从初始值设定项列表中构造函数的模板参数推导

从初始值设定项列表初始化向量时,为什么不使用移动构造(通过隐式构造函数)

使用对象初始值设定项时如何在列表中添加值?

构造函数与数组初始值设定项的歧义

如何不使用std :: initializer_list定义初始值设定项列表构造函数?

如何在成员初始值设定项列表之外初始化类成员

使用列表初始值设定项vs构造函数的complex <>?

C ++:构造函数初始值设定项列表的替代形式,无需分配?

构造函数采用初始值设定项列表

表达式列表在初始化指向Mat的向量的指针时被视为初始值设定项中的复合表达式

初始化初始值设定项列表中的许多对象成员变量

如何使用Clang-AstMatcher获取所有构造函数的初始值设定项?

带有成员初始值设定项列表的构造函数定义

如何在不使用匿名对象的情况下初始化列表初始值设定项中的对象?

构造函数初始值设定项列表中的共享参数

如何在指定的初始值设定项中调用协议扩展初始值设定项?

错误:LINQ to Entities 中仅支持无参数构造函数和初始值设定项

如何在 C++ 构造函数初始值设定项列表中初始化非内置类型的数组?

从现有集合初始化对象初始值设定项中的仅获取集合

如何在带有初始值设定项的构造函数中使用 vprintf/cstdarg 功能?

子类是否需要构造函数/初始值设定项?

我如何在初始化列表中的构造函数之后初始化变量/对象?

如何修复“属性没有初始值设定项并且未在构造函数中明确分配”错误?

如何在 C++ 初始值设定项列表中将常量引用成员初始化为另一个成员(标准向量)