ソースファイルの一部だけにCまたはC++言語標準を適用できますか?ソースファイルがC90に準拠していることを確認したいが、それはC99を必要とするいくつかのヘッダに依存する。これらのヘッダーのコンプライアンスは今私にとっては重要ではありません(私は当分C99でコンパイルできます)。しかし、将来的にはより限定的なプラットフォームにコードを移植するために必要な作業を最小限に抑えたいと思います。ソースファイルの一部だけに言語標準を適用しますか?
つまり、インクルードされたヘッダーを除いて、ファイル全体に適用する言語標準が必要です。ヘッダーインクルードがCおよびC++でどのように機能するかを考えると、一般的な問題は、特定のソースファイルの任意の部分に言語標準を適用することであると考えます。
私は特にGCCで作業していますが、これが他のコンパイラ(msvc、clang)でも可能であるかどうか不思議です。
しかし、ファイル全体に関連するもの、ソースファイルとプログラム全体との間の「やりとり」が標準であることは知っていますか?ソースコードファイルの一部は、独自のバキュームには存在しません。 – deviantfan
それのポイントは何ですか? @EugeneSh。 –
- コンプライアンスを使用して標準準拠を実施することがアイデアです。 C90に準拠するようにファイルの依存関係をすべて調べ直すことができないとしても、開発中のソースファイルが古い標準でサポートされていない言語構造を使用しないことを主張できることは有益です。 –