2011-04-30 9 views

答えて

5

"null"値を持つことができます。一般的な例:

public int MyFunction(int? x) 
{ 
    int m = 99; 

    if(x == null) 
     m = 0; 
    else 
     m /= x.Value; 

    return m; 
} 

それ以外の場合、null値をMyFunctionに渡そうとすると、コンパイラはエラーを返します。

+2

またはif(!x.HasValue);) – Gats

+0

+1 @Gats - 良いキャッチ:-) http://stackoverflow.com/questions/676078/which-is-preferred-nullable-hasvalue-nullable- null – Jess

+0

私は巧妙な私を呼ぶことはありません..私はポイントを逃したことを知った前にInt32以上のInt16を使用する理由についての答えを書いた:D:D – Gats

1

それは「利益」については、実際にはない - それはおよそ微妙に違うものを表すです。 Int16?は、実際にはNullable<Int16>の省略形です。つまり、通常のInt16の範囲に加えて、空/空の状態を表すことができます。しかし、欠点は、より多くのスペースが必要であるということです。したがって、スペース効率があなたの目標(主にアレイで意味をなさない場合など)を慎重に考えたければならないかもしれません。

+0

thnx u r wright私はanthor単語を使用しなければならなかった......しかし...... – alasif

関連する問題