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

「CS0161: not all code paths return a value」が出た場合は?

「必ず結果(戻り値)を返す」と約束したメソッドで、結果が返されないルートが存在します(例:intを返すメソッド内で、ifの条件に当てはまらなかった時に何も return していない)。

メソッドの戻り値の型を void 以外に設定した場合、プログラムがどの条件分岐(if-else)を通ったとしても、必ず最後に returnで値を返さなければならないというルールがあるためです。

全ての ifや else ifの分岐の終わりに returnがあるか確認します。一番最後(メソッドの末尾)に「どの条件にも当てはまらなかった場合のデフォルトの return 値」を追記するのが最も安全です。

目次

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