メインコンテンツへスキップ
< すべてのトピックに戻る

「StackOverflowException」が出た場合は?

プログラムが無限ループ(自分自身を永遠に呼び出し続ける状態)に陥り、メモリがパンクしました(例:Aの処理がBを呼び、BがAを呼ぶキャッチボールが止まらない)。

再帰処理(自分を呼ぶ関数)の終了条件を書き忘れたり、プロパティの getterの中で自分自身の変数を return してしまうという典型的な記述ミスで発生します。

エラーの履歴(スタックトレース)を見て、どのメソッドが連続して呼ばれているか特定します。プロパティなら public int Score { get => Score; }となっていないか確認し、バッキングフィールド(_score等)を返すよう修正します。

目次

9周年キャンペーン実施中 早い申込みほど受講料がお得に