2007年6月 5日(火) 18時16分02秒 [C/C++言語]
STLのlistでn番目とm番目の要素を入れ替えるには
STLのlistで、n番目とm番目の要素を交換したい場合のプログラムソース。
std::list<sakura> tomoyo;
「tomoyo」の中に何かいろいろ入っているとする。
ここでn番目とm番目の要素を入れ替えるには、以下のように記述。
std::list<sakura>::iterator it1;
std::list<sakura>::iterator it2;
it1 = tomoyo.begin();
it2 = tomoyo.begin();
std::advance( it1, n-1 ); // n番目に移動
std::advance( it2, m-1 ); // m番目に移動
// 要素を交換する
std::iter_swap(it1, it2);
std::list<sakura>::iterator it2;
it1 = tomoyo.begin();
it2 = tomoyo.begin();
std::advance( it1, n-1 ); // n番目に移動
std::advance( it2, m-1 ); // m番目に移動
// 要素を交換する
std::iter_swap(it1, it2);
※nとmは、int型の変数。
この日記へのコメントはお気軽に! コメント数:0 トラックバック数:0
| « カラス |
前後のエントリ < 旧 / 新 > | 電撃ルビーウルフと香辛料 » |
トラックバック
このエントリーへのトラックバックURLを表示するにはここをクリック
※スパム防止のため、トラックバックURLは別ウインドウで表示します。(JavaScriptが有効でないと表示されません。)
コメント数: 0件