自己言及するジェネリクスをC#でも書いてみました。
namespace Sample
{
public class HogeA<H> where H : HogeA<H>
{
public H GetHoge(){return null;}
}
public class HogeB : HogeA<HogeB>{}
public class Test
{
public static void Main(String[] args)
{
HogeB hogeB = new HogeB();
HogeB hogeB2 = hogeB.GetHoge();
}
}
}
やってることは一緒ですね。
投稿日時 : 2008年5月26日 22:26