vector 配列のマージ – プログラミング – Home

通知
すべてクリア

[解決済] vector 配列のマージ


熱血
 熱血
(@熱血)
ゲスト
結合: 15年前
投稿: 100
Topic starter  

MFC VC++6.0 XP
vector 配列をマージさせたいのですが、コンパイルエラーが出力されます。
詳しい方よろしくおねがいします。

vector <CPoint> wFront ;
vector <CPoint> wBehind ;

wBehind.push_back(CPoint(4,4)) ;
wBehind.push_back(CPoint(5,5)) ;
wBehind.push_back(CPoint(6,6)) ;
wFront.push_back(CPoint(1,1)) ;
wFront.push_back(CPoint(2,2)) ;
wFront.push_back(CPoint(3,3)) ;

     //この行でコンパイルエラー
wFront.insert(wFront.end(),wBehind.size(),wBehind) ;

***エラーメッセッージ***
3 番目の引数を 'class std::vector<class CPoint,class std::allocator<class
CPoint> >' から 'const class CPoint &' に変換できません。


引用未解決
トピックタグ
うみんちゅ
 うみんちゅ
(@うみんちゅ)
ゲスト
結合: 16年前
投稿: 15
 

CPointクラスのインスタンスを作成して引数として渡せばいいのでは?


返信引用
επιστημη
 επιστημη
(@επιστημη)
ゲスト
結合: 21年前
投稿: 600
 

#include <inserter>
...
// wFrontの末尾にwBehindの全要素をコピー
std::copy(wBehind.begin(), wBehind.end(), std::back_inserter(wFront));


返信引用
επιστημη
 επιστημη
(@επιστημη)
ゲスト
結合: 21年前
投稿: 600
 

おっとチョンボ。

× #include <inserter>
○ #include <inserter>


返信引用
επιστημη
 επιστημη
(@επιστημη)
ゲスト
結合: 21年前
投稿: 600
 

あーもーなにやってんだろ

× #include <inserter>
○ #include <iterator>


返信引用
επιστημη
 επιστημη
(@επιστημη)
ゲスト
結合: 21年前
投稿: 600
 

> // wFrontの末尾にwBehindの全要素をコピー
> std::copy(wBehind.begin(), wBehind.end(), std::back_inserter(wFront));

あるいは

wFront.insert(wFront.end(), wBehnd.begin(), wBehind.end());


返信引用
熱血
 熱血
(@熱血)
ゲスト
結合: 15年前
投稿: 100
Topic starter  

うみんちゅさん、επιστημηさん、レスありがとうございました。
wFront.insert(wFront.end(), wBehnd.begin(), wBehind.end());
でできました。
ありがとうございました。


返信引用
επιστημη
 επιστημη
(@επιστημη)
ゲスト
結合: 21年前
投稿: 600
 

えーと...ともかくマニュアル読みましょう。


返信引用
PATIO
(@patio)
Famed Member
結合: 3年前
投稿: 2660
 

STLの解説をしてくれているHPは探せば見つかると思うので
一度ちゃんと勉強した方が良いのではないかなと思います。

まあ、プログラミングやっていると勉強することばかりで
常に勉強する必要が有りますけれど。

KAB-studio
http://www.kab-studio.biz/index.html
ここでSTLの解説をやっていたと思います。
代表的なアルゴリズムに関しての解説もあったと思います。

あとは書籍を購入して勉強とか。


返信引用

返信する

投稿者名

投稿者メールアドレス

タイトル *

プレビュー 0リビジョン 保存しました
共有:
タイトルとURLをコピーしました