using System;
class Test
{
string name;
int num1, num2;
public Test()
{
num1=10;
num2=20;
}
public void Show()
{
Console.WriteLine(num1+num2);
Console.WriteLine(name);
}
}
class TestDemo
{
static void Main()
{
Test ob = new Test();
ob.Show();
}
}
錯乱:
完全なリファレンスC#3.0には、独自のコンストラクターを定義した場合、デフォルトのコンストラクターは呼び出されないと記載されています。私はそのことをしましたが、定義されたコンストラクターで初期化せずに文字列変数を残しました。上記の概念によれば、文字列変数は初期化されず、独自に定義したため、デフォルトのコンストラクターを実行してデフォルト値を与えることはありません。
したがって、エラーが表示されないのはなぜですか。その文字列は値などで初期化されていません。[コンパイラのデフォルトコンストラクタ]のどこかから値が割り当てられていることを示していませんか?