AUTOSAR C++14 Rule M6-4-2
All if ... else if constructs shall be terminated with an else clause
説明
ルール定義
All if ... else if constructs shall be terminated with an else clause.
根拠
if...else if 文を else ステートメントで終えることは、防御的プログラミングです。この最後の else ステートメントは、コードが if および else if ステートメントを偽として通り過ぎるという特異な状況が発生した場合の安全策としての役割を果たします。
if ステートメントの後に 1 つ以上の else if ステートメントが続く場合は、最後の else if ステートメントの後に else ステートメントを配置してください。この else ステートメント内でアクションを指定します。アクションが不要な場合は、アクションを実行しない理由についてのコメントを提供してください。
Polyspace 実装
if … else if 文が else ステートメントで終わっていない場合は常に、Polyspace® がこの欠陥を報告します。
トラブルシューティング
ルール違反が想定されるものの、Polyspace から報告されない場合は、コーディング規約違反が想定どおりに表示されない理由の診断を参照してください。
例
チェック情報
| グループ: ステートメント |
| カテゴリ: Required、Automated |
バージョン履歴
R2019a で導入