タイトル | : KeyedCollectionについて |
記事No | : 7546 |
投稿日 | : 2008/05/16(Fri) 16:50 |
投稿者 | : kuroko |
はじめまして。 いつも参考にさせていただいてます。
早速質問なのですが... KeyedCollectionクラスを継承したクラスに型パラメータを定義して その型をKeyedCollectionのキーの型に指定すると例外が発生します。
Public Class MyCollection(Of TKey, TValue) Inherits KeyedCollection(Of TKey, TValue)
次のように値の型の指定のみなら例外は発生しません。
Public Class MyCollection(Of TValue) Inherits KeyedCollection(Of String, TValue)
ちなみに、意味は無いですが型パラメータを定義して 使用しなかった場合も例外が発生します。
Public Class MyCollection(Of T) Inherits KeyedCollection(Of String, Object)
ただし、例外が発生するといっても中断されるわけではなく、中断モードのときに 作成したクラスで宣言した変数にマウスカーソルを合わせると "Count = 型 '{TypeLoadException}' の例外が発生しました" と表示されるだけで動作自体には問題はありません。
このまま使っても問題ないのかわからず質問させていただきました。 よろしくお願いします。
開発環境: WindowsXP SP2, VS2005
|