次の 2 つのコード スニペットの違いは何ですか?
public void foo(out classA x)
{
y = new classA();
x = y;
}
そして2番目:
public void foo(out classA x)
{
classA y;
x = y;
}
2 番目のスニペットが危険であるというのは本当x
ですか?y
foo
一般的に「新しい」を使用する必要があるのはなぜですか?
x
C++ では、2 番目のスニペットがポインターである場合、ステートメントx = y
はポインターではないためコンパイルさえされないため、少し混乱してy
います。