ほとんどの場合、stl オブジェクトの割り当て/割り当て解除がどのように行われるかについて混乱しています。例: このループを見てください。
vector<vector<int>> example;
for(//some conditions) {
vector<int>row;
for(//some conditions) {
row.push_back(k); //k is some int.
}
example.push_back(row);
}
この場合、オブジェクト行で何が起こっているか。例を介してアクセスした場合でも値を確認できます。つまり、実行example.push_back(row)
すると新しいコピーが作成されます。私は正しいですか。同じことを防ぐ良い方法はありますか(私が正しい場合)。
stl
また、割り当て/割り当て解除がどのように処理されるか、またはそのようなメモリコピーの問題を回避するためのベストプラクティスを読むことができる参照を誰でも提供できます(大規模なアプリケーションの場合)。
どんな助けでも感謝します。