STLコンテナ内の定数(または定数ではない)参照をどのように渡して操作しますか。C++で関数引数としてreference_wrapperオブジェクトを渡す
bool foo(const Obj& A, const Obj& B) {
// do some computation on A & B
}
と& Bは常に一緒に発生するので、私はSTLのペアに入れたい:私は機能を持っていると言う
bool foo(const std::pair<Obj, Obj>& A_and_B) {
// do some computation on A & B
}
しかし、今の両方が& Bはにコピーされますオブジェクトfooを呼び出す必要があるたびにペアを作成します。私はreference_wrapperをC++ 11で見つけました。このようなことはうまくいかないが、ポインタを使わずに参照値でコンテナを渡す正しい方法は何ですか?
"正しい"方法はありませんが、仮引数型を 'pair const&'または 'pair const'とすることです。 –