首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在C++中简明地初始化安全集合?

如何在C++中简明地初始化安全集合?
EN

Stack Overflow用户
提问于 2010-02-21 19:59:19
回答 1查看 281关注 0票数 0

可能重复: C++:用硬编码元素初始化STL向量的最简单方法

我现在正在学习C++,我正在寻找一种方法来快速、轻松地为每个元素初始化一个具有不同值的“安全”集合(就像一个向量)。我习惯于Python的简洁列表/元组初始化,我想知道在C++中是否存在相同的语法技巧或集合类型。

例如,如果我想在Python中初始化唯一支付对象的列表,我可以这样做:

代码语言:javascript
复制
payments = [Payment(10, 2), Payment(20, 4), Payment(30, 6)]

但是,为了在C++中初始化支付结构向量,我需要编写如下内容:

代码语言:javascript
复制
Payment tempPayments[] = {
    {10, 2},
    {20, 4},
    {30, 6}
};
vector<Payment> examplePayments(tempPayments, tempPayments + 
    sizeof(tempPayments) / sizeof(Payment));

是否有更简单的方法来初始化具有独特结构的向量,或者其他更方便的安全集合?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2010-02-21 20:02:03

查看Boost.Assign,特别是。它允许您使用以下代码初始化集合:

代码语言:javascript
复制
const vector<int> primes = list_of(2)(3)(5)(7)(11);
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2307251

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档