Visual Basic 2008 の新機能 - 匿名型 その1 -
匿名型について引き続きますよ~~ん♪ええ、おなかは空いてるんですけどね☆
Orcas Beta1 のころに書いたエントリでは書いていなかったのですが、匿名型にはキー プロパティというのがあるそうです。
MSDN : キー (Visual Basic) # このページ・・・「キー (Visual Basic)」ぢゃなくて「Key (Visual Basic)」じゃないのかな?
このキー プロパティを使用すると、どうなるのさぁ~?ってことですが、匿名型のインスタンスの比較とかを行う場合に使用するって感じですかね。匿名型のインスタンスの比較については、'型が同じであり、キープロパティの値が等しければ、等価のインスタンス'
という動作になります。なお、キー プロパティを持たない匿名型は自身に対してのみ等価になるようです。
また、キー プロパティとして指定したプロパティは読み取り専用となります。値の変更はできません。
さて、実際にはこのキー プロパティを使用すると、作成される新しい匿名型では、Equals、GetHashCode、 ToString をオーバーライドします。
このオーバーライドによって、匿名型のインスタンスの比較の際にキー プロパティが有効になるわけですね。
ふぅ。年末年始は帰省していたのもあって、ほとんどVisual Basic を触ることもなかったので若干感覚が鈍っていますねw
今日はもうおなかがすいて力が出ないし、ボチボチやっていきます。次回は匿名型ってのが実際どういったものなのかをお勉強します。