5
以下の動作をシミュレートできるマクロを作成しようとしていますが、これは機能しません。マクロでコメント文字を挿入することはできますか?もう一つの選択肢は何ですか?プリプロセッサマクロを使用してコメント文字を挿入します。
#define model_interface(CLASS, ROOT) \
class CLASS : public NInterface<ROOT> { \
private: \
CLASS(CLASS&) { } \
// 'two slashes should be actually inserted too so another characters on same row are ignored'
model_interface(Element, ElementRoot) { // 'previous bracket should be ignored'
// members declarations here
}
いくつかのコンパイラ(少なくとも1つ)は、コメントを書く '#define COMMENT/## /'をサポートしていますが、それがあなたが探しているものかどうかわかりません。とにかく非標準的なので、それは最初の選択肢ではありません。 –
*呼び出されたときに人間の目にはほとんどのマクロコンテンツが見えないので、コメントは本当に有用ではありません。一般に、コンパイラはプリプロセッサを使用して新しいコード*を生成し、そのコードはコンパイラによって処理されます。一部のコンパイラには、プリプロセス段階の後にソースコードを印刷するオプションがあります。 –