1

1行目と2行目の両方で、オブジェクトのスライスを実行しますか、それとも1行目だけを実行しますか?御時間ありがとうございます !

class Base{
};

class Derived : public Base{
};

main()
{       
   Derived d1;
   Base b1 = d1;  //line 1
   Base &b2 = d1; // line 2
}
4

1 に答える 1

3

最初の割り当てにのみコピーが含まれるため、最初の割り当てのみがスライスにつながる可能性があります。2番目の割り当ては、オブジェクトへの参照を取得するだけです。コピーがなければ、スライスすることはできません。

于 2012-12-23T19:15:42.710 に答える