vectorの使い方メモ
【.hファイル】
float型のベクターを使う場合
//宣言
vector <flaot> vec;
【.cppファイル】
//新しく作る
vec.push_back( float() );
int last = vec.size() - 1;
vec[last] = 10.f; // 入れたい値を入れる
// 全て削除
vec.clear();
//末尾の要素を削除
vec.pop_back();
//要素の値を使用する
for(int i = 0; i < vec.size(); i++)
{
float a = vec[i];
}
以上はほんの基礎の基礎なので、ある条件を満たす要素にだけアクセスしたい場合などはイテレータを使う。イテレータの使い方はまた後ほど。
【追記 2011.11.26】
ここが参考になります
http://www.cppll.jp/cppreference/cppvector.html
【追記 2012.2.18】
参考サイト C++標準ライブラリ
http://www.geocities.jp/ky_webid/cpp/library/021.html
ある条件を満たす要素の削除
【.hファイル】:叙述関数の定義
class Check
{
bool operator()(const particle _vec) // ベクターを作成する型をparticleとする
{
return _vec.life <= 0; // lifeが0以下のものを消すとする
}
};
【.cppファイル】
// remove_if関数を使う
vactor<vec>iterator end_it = remove_if( vec.begin(), vec.end(), Check() ); // ここで条件に該当する要素を抽出する
// 本当の意味での削除を行う
vec.erase( end_it, vec.end() );
以上でできるが、イテレーターが何なのかまだよくわかっていないし、叙述関数も全然分からない。
また、機会があれば勉強したい。
0 件のコメント:
コメントを投稿