次の Winforms 階層があります。
Form ==> AForm ==> BForm
int? X;そして、 で定義された null 許容メンバーがありますAForm。にBFormは、次のコードがあります。
public partial class BForm : AForm, IBview
{
......
public int Y
{
get
{
int z = X ?? 0;
System.Diagnostics.Debug.WriteLine("X: " + X.ToString() + " z: " + z.ToString());
return z;
}
}
Xnull であってはなりません。フォームを閉じて開こうとしていBFormます。通常は機能し、zゼロになることもあります (10 回に 1 回など)。z==0オンラインの条件付きブレークがありreturn zます。
ブレークポイントにヒットしたとき。デバッグ書き込み
X: z: 0
しかし、ブレークポイントがヒットした後にビジュアルスタジオでXマウスカーソルを合わせると、の値はnullでも0でもありません。X