web-dev-qa-db-ja.com

標準のC ++文法はありますか?

標準は公式のC++文法を指定していますか?

検索しましたが、どこにも見つかりませんでした。

また、C++の文法について、どのカテゴリの文法に該当するかなど、少し詳しく読みたいと思います。正しい方向を示すリンクがあれば役に立ちます。

カテゴリ別、つまり

Click to enlargeここ から取得。

28
Lazer

はい、そうです。

文法は標準全体で詳細に説明されており、付録A:文法の要約(C++ 03標準とC++ 0x最終委員会ドラフトの両方の付録A)に要約されています。

C++ 03標準を購入 または C++ 0x FCDをダウンロード (そのページのドキュメントn3092)ができます。

「それはどのカテゴリーにあるのか」に答えるために。質問、 C++文法はnotコンテキストフリー (その質問への回答にリンクされている質問も参照してください。追加の質問があります。 C++文法とC++の解析に関連する問題の例)。

27
James McNellis

Alessio Marchettiは、C++用のハイパーリンクされたBNF文法を http://www.nongnu.org/hcb/ に掲載しました。

すべてを1つのページにリンクすると、ルール間を簡単に移動できます。

8
Nate Kohl

Andrew Birkettは、C++の解析の完全な概要を説明しています 彼のWebサイトで 。 C++文法(語彙、構文、および意味分析の混合)を作成する際のいくつかの問題をカバーし、いくつかのC++文法へのリンクが含まれています。

5
Josh Kelley

C++の作成者であるBjarneStroustrupは、何度も更新されているC++プログラミング言語という本を書きました(私は約10年前に第3版を読みました)。文法(プリプロセッサとコンパイラ)に関して非常に技術的な詳細があったことを思い出します。

この本はおそらく地元の書店で見つけることができます。具体的にする必要があるかどうかによっては、ANSIの標準文書よりも多くの楽しみを提供する可能性があります。

2
Sprague

確かではありませんが、私が見る限り、James McNellisのリンク(PDFへ)の最初のページにメモが含まれています。

警告

このドキュメントはISO国際規格ではありません。レビューとコメントのために配布されます。これは予告なしに変更される場合があり、国際標準とは呼ばれない場合があります。

それで、検索して、これが公式ISOへの正しいリンクだと思います: http://www-d0.fnal.gov/~dladams/cxx_standard.pdf

0
Poni