2014-06-04

http://anond.hatelabo.jp/20140604154102

俺も横だから、ココにトラバつけるわ。

C#触ったことなから知らなかったけど、bool?(null 許容型)てのがあるんだね。

MSDNみてみたけど http://msdn.microsoft.com/ja-jp/library/1t3y8s4s.aspx

数値型と Boolean 型に null を割り当てる機能が便利なのは、値を割り当てられていない可能性がある要素を含むデータベースや他のデータ型を処理するときです。 たとえば、データベースの Boolean フィールドには、値 true または false を格納するか、未定義にすることが可能です。

ってことがnull許容型の理由みたいね

bool? であれば3つの状態を表すことができるかもしれないけど、やっぱりboolはtrueかfalseだよ。

MSDNにある通り、nullを許容するとしてもね。

3つ以上の状態を作りたいなら、それこそenumでもなんでも使えばいい。

bool?で宣言されてる変数を追って行って「3つの状態保持のために使ってまーす」ってコード見たら

ハァ?(゚Д゚) ってなるわ。nullはnullよ。

記事への反応 -
  • 横だけど、よく何かの検査データとかで N/A なんてのがあるけど、たとえば0以上(0もありうる)の検査値を保持するデータがあるとして、あの N/A を表すために NULL と表すか、0未満はあり...

    • 俺も横だから、ココにトラバつけるわ。 C#触ったことないから知らなかったけど、bool?(null 許容型)てのがあるんだね。 MSDNみてみたけど http://msdn.microsoft.com/ja-jp/library/1t3y8s4s.aspx 数値...

      • http://msdn.microsoft.com/ja-jp/library/system.windows.controls.menuitem.ischecked(v=vs.90).aspx 例えば、WPFのIsCheckedプロパティは、基本的にnull許容のbool型で定義されてるんだよねえ。 これについてはどう思...

    • 横だけど NULLがオブジェクト(ないしはプリミティブ)なのかどうか?という言語仕様か。 いくつかの言語ではNULLはINTで0の事だから紛らわしいねぇ。 どうしたもんなんだろうね。

    • だから、その場合は CREATE TABLE 被験者( ID SERIAL NAME ) CREATE TABLE 検査( 検査ID 被験者ID ) CREATE TABLE 検査結果( 検査ID 検査結果 有効フラグ ) ってくらいにすればいいだろと、君...

記事への反応(ブックマークコメント)

ログイン ユーザー登録
ようこそ ゲスト さん