C1
はクラスです。'C1'は 'タイプ'ですが、 '変数'のように使用されます
public class C1
{
public int a{get; set;}
}
public class C2
{
public C2(){c1 = new C1(); }
public C1 c1{get; private set; }
public C1 f(){return C1();}
}
はC2.f()
の定義については、コンパイルされません。
'C1' is a 'type' but is used like a 'variable'
C1
は私には方法のように使用されます。なぜコンパイルは変数のように使われていると言いますか?
私はnew
を使用する必要があることを知っています。私はなぜコンパイラが変数のように使われていると言っているのか尋ねています。
ありがとうございました。
'新しいC1()を返すのですか? – Ivar
私は 'new'を使う必要があることを知っています。私はなぜコンパイラが変数のように使われていると言っているのか尋ねています。 – Ben
@Benあなたはそれを返そうとしているからです。変数/定数/リテラルまたはメソッドの出力を返します。 'C1'はそれらのものではなく、' new C1() 'は' C1'クラスの新しい変数です。 – Powerlord