0

私がこのようなことをすれば、私はそれを知っています:

class Obj
{
public:
    int* nine;
};

Obj Obj1; //Awesome name
int eight = 8;
Obj1.nine = &eight;
Obj Obj2 = Obj1; //Another Awesome name

次にObj1とは同じ を指しObj2ますが、同じポインタを共有しますか? すなわち:nine8

int Necronine = 9;
Obj1.nine = &Necronine;
Obj2.nine == ???

は をObj2指しnineますかNecronine, または を 指し 続け8ます ?

4

1 に答える 1

4

Obj2 の 9 は Necronine を指しますか、それとも 8 を指すままになりますか?

この行が実行されると: Obj Obj2 = Obj1; // すべてのオブジェクトには独自のポインターがあり、そのポインターvalue(copy)obj1.nineコピーされobj2.nineます。

于 2009-10-30T02:20:25.110 に答える