15

私はスタンレーB.リップマンによるC++プライマー第4版を勉強しています。セクション12.4.1で、作成者がコンストラクタ初期化子について話すとき、彼は次の例を示します。

class ConstRef {
  public:
    ConstRef(int ii);
  private:
    int i;
    const int ci;
    int &ri;
};
// OK: explicitly initialize reference and const members.
ConstRef::ConstRef(int ii): i(ii), ci(i), ri(ii) { }

これにより、一時的な、をri指すぶら下がっている参照が発生する可能性があると思われます。ii私は正しいですか?

4

1 に答える 1

13

私もそう思います。これを試して

ConstRef::ConstRef(int ii): i(ii), ci(i), ri(i) { }
于 2012-05-25T10:48:08.340 に答える