読者です 読者をやめる 読者になる 読者になる

つばろぐ

福岡のエンジニアによる技術的な備忘録です。

C#とVB.NETでのオブジェクト初期化子の書き方とは

出張先からの投稿です。
C#VB.NETではオブジェクトを宣言するときに、プロパティの設定をすることができます。
このようなオブジェクトを「オブジェクト初期化子」と言います。

C#でのオブジェクト初期化子

C#では「new クラス名()」の後に波括弧("{ }")をつけ、その中にプロパティと値を記述します。
サンプルはこちら。

gist7807100

VB.NETでのオブジェクト初期化子

VB.NETでは「New クラス名()」の後にWithキーワードと波括弧を続け、「.プロパティ名」と値を記述します。
サンプルはこちら。

gist7807500

雑感

恥ずかしながらオブジェクト初期化子は今年になって知りました。
コンストラクタに引数を追加したり、初期化後に1行ずつプロパティの設定を行っていました。 これならコードもスッキリするし、プロパティの初期化を明示することができます。

しかし、こうしてC#VB.NETで書いた同じ処理を並べると、C#がスッキリ見えますね。