コード検査: 循環コンストラクター呼び出しが可能
次の(合成された)コードスニペット
class Base
{
Base(int n) : this("")
{
}
Base (string s) : this(0)
{
}
}
いずれかのコンストラクターを呼び出すと、コンストラクターが互いに永久に呼び出すため、最終的なスタックオーバーフローが発生します。
関連ページ:
コードインスペクション設定を構成する
設計時コードインスペクションを構成する:デフォルトでは、JetBrains Rider はサポートされている言語に対応するすべてのファイルで設計時コードインスペクションを有効にします。必要に応じて、無効にすることができます。設計時コードインスペクションが有効かどうかにかかわらず、コードインスペクションを特定の範囲でいつでも実行できます。「鉛筆」ウィジェットを使用して、エディターから直接インスペクション設定をすばやく調整するか、設定でより詳細な構成を行うことができます。を押すか、メニューから(W...
コード検査: 値型と「null」の可能な比較
次のコードを考えてみましょう。static void PrintItems<T>(List<T> items) { foreach (var item in items) { if (item != null) { Console.WriteLine(item.ToString()); } } } 最初は明らかではないかもしれませんが、実際には、型は値型(たとえば、または整数)になる可能性があります。これにより、比較が完全に無視されることになり、ユーザーが意図したものではな...