メインコンテンツ

AUTOSAR C++14 Rule A2-13-1

Only those escape sequences that are defined in ISO/IEC 14882:2014 shall be used

説明

ルール定義

Only those escape sequences that are defined in ISO/IEC 14882:2014 shall be used.

根拠

エスケープ シーケンスとは、文字列と文字リテラルで表される一部の特殊文字です。これらはバックスラッシュ (\) の後ろに文字を続けることで記述します。

C++ 規格 (ISO/IEC 14882:2003、節 2.13.2) ではエスケープ シーケンスのリストを定義しています。エスケープ シーケンスを参照してください。このリストにないエスケープ シーケンス (バックスラッシュの後ろに文字) を使用すると未定義の動作につながります。

トラブルシューティング

ルール違反が想定されるものの、Polyspace® から報告されない場合は、コーディング規約違反が想定どおりに表示されない理由の診断を参照してください。

すべて展開する

#include <string>
void func () {
  const std::string a = "\k"; //Noncompliant
  const std::string b = "\U0001f34c"; //Compliant
}

この例では、Polyspace は認識されないエスケープ シーケンス \k に対する違反を報告します。

チェック情報

グループ: 構文規則
カテゴリ: Required、Automated

バージョン履歴

R2019a で導入

すべて展開する