簡體   English   中英

如何將多個值推回向量中?

[英]How to push_back multiple values into a vector?

我知道這個問題以前曾被問過,而且我知道在C ++ 11中,您可以

vector<int> v = {2,5,8,11,14};
vector<int> v{2,5,8,11,14};

v.push_back({x,y});

但這給了我一個編譯錯誤。 我正在使用Visual Studio Express 2012。

我該如何完成?

編輯:錯誤截圖附:

在此處輸入圖片說明

Visual Studio 2012 不支持通過初始化程序列表進行矢量初始化 VS2012隨附的標准庫缺少很多C ++ 11支持,而VS2012 C ++編譯器本身支持該庫。

遺憾的是,就像VS2012和gcc 4.7一樣,對新C ++ 11功能的出色編譯器支持受到部分庫支持的阻礙,該支持似乎總是落后於編譯器。

在擁有支持向量初始化程序列表的編譯器之前,可以使用boost :: assign :: list_of

如@Michael Goldshteyn先前所述,無法使用此編譯器及其標准庫。 但是,如果您願意包含Boost庫,則可以使用如下代碼:

#include <boost/assign/std/vector.hpp>

using namespace boost::assign;

{
    std::vector< int > myElements;
    myElements += 1,2,3,4,5;
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM