0
コードがスコープを入力し、オブジェクトと同じ名前の新しいオブジェクトを定義した場合、新しく定義されたオブジェクトは正しく定義されますか?次のコードのよう
を示しています
かの範囲で同じオブジェクト名を持つオブジェクトを作成するとどうなりますか
class ClassB
{
ClassA* p;
ClassB(ClassA* a)
{
p = NULL;
if (a != NULL)
p = a;
}
};
ClassA x;
if (some condition)
{
ClassB x(x);
// Will x->p be NULL or it will be pointer a?
}
、x軸は>こちらまたはNULLのですか?
gccで見ることができますが、NULLになります。しかし、VS2015ではそれはそうです。
私の質問は、標準がこの部分に対して何を言っているかということです。どうもありがとう。
私は2番目のxはint型のx {X}のように初期化された場合の問題は、むしろだったと思います。その値が最初のxの値になるか、その値は初期化前の値になります –
@AndrewKashpurが答えを修正しようとしました。今、そのむしろコメントですが、あまりにも多くのダウンボントがなければ、私はちょうどそれを残すでしょう... – user463035818