2014-04-29スマートフォン用の表示で見る平々毎々(アーカイブ)はてなダイアリーのアーカイブです。この広告は、90日以上更新していないブログに表示しています。さんのJavaジェネリクス記事を読みながら、C#ではどうかな、とあれこれ考えているわけです。プログラマーの脳みその話を振られて。真の高階型引数、つまり、型パラメータを取る型パラメータは実現できないです。型クラス的なものであればエミュレートできるらしい。CLRにもILにも型クラス的なものなんかないわけで、オダスキー教授が言うところの「貧者の型クラス(pdf)」を使う、つまり型に適合するメソッド群をインスタンスとして渡してやるしか方法はないわけですが(ちなみにScalaでは、そのインスタンスを暗黙的に生成したり渡したりできる仕掛けがある)。}}いけるじゃないか!!(追記)new制約つけてnewしましたが、よーく考えると、Valueクラスの中に型クラスもどきインスタンスを持つようにするとか、あるいはタプルで型クラスインスタンスとValueクラスのインスタンスをまとめて扱うようにする方法もありますね。したら型クラスもどきインスタンスを使いたい側でnewしなくても、Valueと一緒に受け取れるはず。https://gist.github.com/matarillo/11393891xuweiさんにもコメントもらいたいなあ。早すぎる最適化バーチャルYouTuberになります。ブログを報告するスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。