AUTOSAR C++14 Rule A2-3-1
Only those characters specified in the C++ Language Standard basic source character set shall be used in the source code
説明
ルール定義
C++ 言語標準の基本ソース文字セットで指定されている文字だけをソース コードで使用するものとします。
根拠
C++ 標準では、基本ソース文字セットが 96 文字で構成されます。構成要素を以下に示します。
スペース文字。
水平タブ、垂直タブ、改ページ、改行などの制御文字。
大文字、小文字、および数字。
_ { } [ ] # ( ) < > % : ; . ? * + - / ^ & | ~ ! = , \ " 'などの特殊文字。
このセットに含まれない文字を使用すると、混乱または予期せぬバグを招く可能性があります。たとえば、ギリシャ文字の "Τ" と英字の "T" は見た目が似ていますが、Unicode コード ポイント値が異なる別々の文字です。予期せぬ動作を回避するには、コメントや文字列リテラルも含め、上で指定された文字のみをソース コードで使用してください。このセットに含まれない文字を使用できるのは次の 2 つのケースのみです。例外を以下に示します。
ワイド文字列のテキストまたは UTF-8 でエンコードされた文字列内のその他の文字。
コメント、ワイド文字列のテキスト、または UTF-8 でエンコードされた文字列内の文字
@。
Polyspace 実装
Polyspace® は、AUTOSAR C++14 規約からの 2 つの例外を除いて、C++ 標準で指定されている 96 文字のセットに含まれない、ソース コード内の文字にフラグを設定します。Polyspace がフラグを設定しないケースは次のとおりです。
ワイド文字列のテキストまたは UTF-8 でエンコードされた文字列内のその他の文字。
コメント、ワイド文字列のテキスト、または UTF-8 でエンコードされた文字列内の文字
@。
トラブルシューティング
ルール違反が想定されるものの、Polyspace から報告されない場合は、コーディング規約違反が想定どおりに表示されない理由の診断を参照してください。
例
チェック情報
| グループ: 構文規則 |
| カテゴリ: Required、Automated |
バージョン履歴
R2020a で導入