#概要
薄い内容の記事です
c#のジェネリックを使ったコードを練習で書いてみたところ、
実行時にプログラムがクラッシュしてしまう事がありました。
#問題のコード例
struct Test<T> { }
struct HasTest
{
//プログラムがクラッシュするのは、おそらく↓が原因
Test<HasTest> test;
}
static class Program
{
static void Main()
{
try
{
/*
↓を実行するとプログラムがクラッシュする。
System.TypeLoadExceptionが投げられるが、キャッチできない
エラーメッセージは、「Could not load type 'HasTest' from assembly」
*/
new HasTest().ToString();
}
catch
{
System.Console.WriteLine("エラー発生");
}
}
}