C++ のベクトル [] 演算子について質問があります。
vector<stack<T>> myStackVec;
ops...
...
...
このコードは変更しませんmyStackVec
:
stack<T> temp = myStackVec.at(stackPos);
cout << "removing " << temp.top() << endl;
このコードは、次のように変更myStackVec
して変更しtemp
ます。
stack<T> *temp = &myStackVec[stackPos];
temp->push(item);
[] 演算子は参照を返しますが、コード スニペット 1 が機能しないのはなぜですか? temp
code1 はコピーですか?