私は、後のコードで使用できる別のマクロを定義するC++でマクロを定義することが可能かどうか疑問に思っていました。これは可能ですか、これにはあまりにも制限があるg ++で使用されるプリプロセッサですか?C++のマクロでマクロを定義できますか?
0
A
答えて
5
いいえ、別のマクロの展開でマクロを定義することはできません。
1
いいえ、マクロをマクロとして定義することはできません。
1
このようなことができますが、それはあなたが探しているものではありませんが、役立つかもしれません。
#ifdef ENABLE_MACRO_1
#define PRINT_MACRO(varName) \
std::cout<<varName<<std::endl;
#else
#define PRINT_MACRO(varName) \
//do nothing
#endif
定義されている別の前条件に応じてマクロを定義することができます。
1
プリプロセッサはソースコードを1回だけ通過するので、これは不可能です。ただし、外部ツールを使用して、m4のようにコンパイルに先立っていくつかの前処理を実行することができます。
関連する問題
- 1. Cマクロ/#インデントを定義しますか?
- 2. マクロCでの再定義とC++
- 3. C++コードのマクロ定義
- 4. Objective-Cマクロの再定義
- 5. C++ 11定義済みマクロ
- 6. JavaScriptのマクロ定義
- 7. マクロの再定義
- 8. 「ヌル定義マクロ」とは何ですか?
- 9. C++でマクロを使用するために、C++でマクロを定義または変換する方法
- 10. マクロの内容からマクロを定義する
- 11. 操作の定義でマクロの中からマクロを使用するには?
- 12. c複数行マクロを定義しますか?
- 13. Objective-cのマクロで配列を定義する方法は?
- 14. objective-cでkvc assessorsを定義するためのマクロ
- 15. マクロは約cxxtestを定義します
- 16. 再定義BOOST_FOREACHマクロ安全
- 17. 構造体定義のマクロを定義しています
- 18. Cで同じトークンを持つマクロ定義は何を意味しますか?
- 19. なぜマクロ定義でdo()while(0)を使うのですか?
- 20. のClojure VARを定義するマクロ
- 21. C++でword octとhexをマクロとして定義していますか?
- 22. Q_SIGNALS、Q_SLOT、SLOT()、SIGNAL()マクロの定義を見ることはできますか? (Qt)
- 23. Eclipse local Findマクロを定義済みの用語で置き換えますか?
- 24. PerlでCスタイルのマクロをシミュレートできますか?
- 25. cでマクロの評価を強制できますか?
- 26. C#のユーザー定義型のVBAマクロを呼び出す?
- 27. Clojureマクロの同義語を定義します
- 28. エラー「定義されたアプリケーションまたはオブジェクト定義のエラー」マクロ
- 29. パラメータ付きC/C++マクロ
- 30. 別のマクロ定義の中からAntマクロを呼び出すにはどうすればよいですか?
「g ++で使用されているプリプロセッサ」でもありませんが、これは十分強力ではありません。これを許可しないのはC++言語そのものです。あなたが達成したいことを説明したなら、私はここの人々が解決策を考え出すことができると確信しています。 – Lindydancer
これはどのように「制限されますか?あなたが達成しようとしていることを共有してください。 –