AUTOSAR C++14 Rule A2-8-2
An implementation file name should reflect the logical entity for which it provides definitions.
説明
An implementation file name should reflect the logical entity for which it provides definitions.
根拠
そのファイル内で宣言されたエンティティの名前と実装ファイル名を一致させることにより、プロジェクト構造がわかりやすくなり、コードが読みやすくなります。
Polyspace 実装
Polyspace® は、class、struct、namespace の名前などの関連する定義型の名前に照らして実装ファイル名をチェックします。名前が一致しなかった場合は、Polyspace が、実装ファイルの 1 行目の先頭の文字にフラグを設定します。
名前の比較では大文字と小文字が区別されません。たとえば、
myclassはmyClassと一致します。名前の比較では以下が無視されます。
アンダースコア文字 '
_'。たとえば、myclassはmy_Classと一致します。接頭辞文字 '
C'、'M'、'T'、または接尾辞文字 'T'。この比較では、接頭辞文字と接尾辞文字のどちらかが無視されますが、両方は無視されません。たとえば、myclassはCmyClassおよびmyClass_Tと一致しますが、CmyClass_Tとは一致しません。ファイル名内のハイフン文字 '
-'。たとえば、my-class.cppという名前のファイルは、myClass_という名前のclassと一致します。
Polyspace は、main() が実装されたファイルをチェックしません。
プロジェクトに空のソース ファイルが含まれている場合、ファイルの名前に一致する定義型がないため、Polyspace はこのルールに対する違反を報告します。空のソース ファイルを削除するか、テキスト ファイルとして名前を変更します。
トラブルシューティング
ルール違反が想定されるものの、Polyspace から報告されない場合は、コーディング規約違反が想定どおりに表示されない理由の診断を参照してください。
例
チェック情報
| グループ: 構文規則 |
| カテゴリ: Advisory、Non-automated |
PQL 名: std.autosar_cpp14.A2_8_2 |
バージョン履歴
R2021a で導入