私は、STLコンテナ(ベクトル、リスト、マップなど)がどのように値を格納するかについて常に混乱してきました。彼らは私が渡した値への参照を保存しているのですか、あるいはコピー/コピーして+値を保存していますか?STL:参照または値を格納しますか?
例えば、
int i;
vector<int> vec;
vec.push_back(i);
// does &(vec[0]) == &i;
と
class abc;
abc inst;
vector<abc> vec;
vec.push_back(inst);
// does &(vec[0]) == &inst;
おかげで
答えをテストする作業コードが好きです(コメントを条件付きにするための小さな変更)。それを実行し、参照してください!私は彼らがコピーを作って保存するのはかなり確信しています。 –