質問編集履歴

6

コメントからコードへ追記

2018/11/15 14:23

投稿

opyon
opyon

スコア1009

test CHANGED
File without changes
test CHANGED
@@ -118,6 +118,18 @@
118
118
 
119
119
 
120
120
 
121
+ //追記2
122
+
123
+ //コメントより
124
+
125
+ //既存vectorへの要素追加なら
126
+
127
+ data[0].vec.insert(data[0].vec.end(), {4,5,6}); //とも書けます。
128
+
129
+
130
+
131
+
132
+
121
133
  //※書き方が分からずここにエラーが出たままです
122
134
 
123
135
  data[0].vec.push_back({1,2,3});

5

追記2

2018/11/15 14:23

投稿

opyon
opyon

スコア1009

test CHANGED
File without changes
test CHANGED
@@ -1,3 +1,27 @@
1
+ ###追記2
2
+
3
+ [std::vector::insert](https://cpprefjp.github.io/reference/vector/vector/insert.html)
4
+
5
+ ```
6
+
7
+ iterator insert(const_iterator position, initializer_list<T> il); // (5) C++11
8
+
9
+ // 挿入位置と初期化子リストを指定するバージョン
10
+
11
+ {
12
+
13
+ v.insert(v.begin() + 1, {"hhh", "iii"});
14
+
15
+ }
16
+
17
+ ```
18
+
19
+ コメント頂いた@yohhoyさん、@epistemeさん、ありがとうございます。
20
+
21
+
22
+
23
+
24
+
1
25
  ###追記
2
26
 
3
27
  boost::range::push_back(target, src);

4

追記

2018/11/15 14:18

投稿

opyon
opyon

スコア1009

test CHANGED
File without changes
test CHANGED
@@ -1,3 +1,17 @@
1
+ ###追記
2
+
3
+ boost::range::push_back(target, src);
4
+
5
+ [boost::range::push_back](https://greek0.net/boost-range/boost-range-push_back.html)
6
+
7
+ [C++ extend a vector with another vector](https://stackoverflow.com/questions/313432/c-extend-a-vector-with-another-vector)
8
+
9
+ @LouiS0616さんのコメントのリンクから検索などしていたら偶然見つけましたのでご参考までに。
10
+
11
+
12
+
13
+
14
+
1
15
  ###解決!(勘違いでした)
2
16
 
3
17
  初期化する時にまとめて代入出来ることと勘違いしていました。

3

解決 修正

2018/11/15 03:31

投稿

opyon
opyon

スコア1009

test CHANGED
File without changes
test CHANGED
@@ -2,7 +2,11 @@
2
2
 
3
3
  初期化する時にまとめて代入出来ることと勘違いしていました。
4
4
 
5
- **結論:出来ない**
5
+ **結論:直接は出来ない** が構造体のメンバ関数などを工夫すれば可能になる
6
+
7
+
8
+
9
+ 回答くださった方ありがとうございました。
6
10
 
7
11
 
8
12
 

2

解決

2018/11/14 11:55

投稿

opyon
opyon

スコア1009

test CHANGED
File without changes
test CHANGED
@@ -1,3 +1,11 @@
1
+ ###解決!(勘違いでした)
2
+
3
+ 初期化する時にまとめて代入出来ることと勘違いしていました。
4
+
5
+ **結論:出来ない**
6
+
7
+
8
+
1
9
  ###知りたいこと
2
10
 
3
11
  下記サンプルコードのようなstd::vector<構造体>の中にあるstd::vector<int>への代入方法が知りたいです。

1

コード追記

2018/11/13 23:40

投稿

opyon
opyon

スコア1009

test CHANGED
File without changes
test CHANGED
@@ -74,6 +74,16 @@
74
74
 
75
75
 
76
76
 
77
+ //こうすると当然問題無い
78
+
79
+ data[0].vec.push_back(1);
80
+
81
+ data[0].vec.push_back(2);
82
+
83
+ data[0].vec.push_back(3);
84
+
85
+
86
+
77
87
  getchar();
78
88
 
79
89
  return 0;