カスタム クラスを使用する場合、int を受け取るスイッチがあります。次に、switch は、num を持つケースと持たないケースがあるクラスを埋めます。int は、アプリケーション内の事実上どこにでも配置できますが、場合によっては int を持たないことがあります。newClass が表示されるとき、ユーザーは番号がないものを確認する必要があります。以下のコードは正常に動作しますが、次の警告を削除する必要があります: 「値の型newClass.num
を null と比較した結果はtrue
" であり、ステートメントの偽の部分については "到達不能なコードが検出されました"。
クラスの nullReferenced 部分をテストするために使用できる方法またはベスト プラクティスはありますか? このタイプの状況は何と呼ばれますか (つまり、null を許容しない参照、nullReference テスト) (...何を検索すればよいかわからないため)?
using system.generic;
using system.generic.collections;
public Class newClass{
string name;
int num;
public newClass(int index){
switch(index){
case 1:
num = 20;
name = "returns true";
break;
case 2:
// no num here
name = "returns false";
default :
break;
}
}
}
public otherClass{
newClass foo = new newClass(1);
newClass bar = new newClass(2);
List<newClass> newClassList = new List<newClass>();
newClassList.add(foo);
newClassList.add(bar);
foreach(newClass nc in newClassList){
if(nc.num != null){
print("True");
} else {
print("False");
}
}
}