1

X-マクロのトピックを詳細に理解しようとしています。しかし、これについて完全な明確さは得られませんでした。どなたか専門家の方が「使い方、呼び出し方」を例に挙げて説明してくださると助かります。

いくつかの記事を見つけましたが、これについて完全に明確にすることはできませんでした。すべての場所で、それらの X マクロの使用が不足しているコードを使用しています。

よろしくお願いします

4

2 に答える 2

1

基本的に#define、変数のリストをプレースホルダー マクロのパラメーターとして使用しますX

#define X_LIST_OF_VARS \
    X(my_first_var) \
    X(another_variable) \
    X(and_another_one)

次に、テンプレートを使用します。

#define X(var) do something with var ...
X_LIST_OF_VARS
#undefine X

コードブロックを作る。たとえば、すべての変数を出力するには:

#define X(var) printf("%d\n", var);
X_LIST_OF_VARS
#undefine X

生成されます:

printf("%d\n", my_first_var);
printf("%d\n", another_variable);
printf("%d\n", and_another_one);
于 2013-10-25T11:29:41.997 に答える