最終更新日時:
が更新

履歴 編集

BOOST_PP_EXPR_IIF

BOOST_PP_EXPR_IIF マクロは第1引数が 1 ならば第2引数に、0 ならば無に展開される。

Usage

BOOST_PP_EXPR_IIF(bit, expr)

Arguments

  • bit : マクロが expr に展開されるか無に展開されるかを決定する条件。 この値は 0 または 1 に展開されなければならない。

  • expr : bit1 のときの展開の結果。

Remarks

このマクロは第1引数に基づいてブーリアン変換を 行わない 。 もしこの変換が必要ならば、代わりに BOOST_PP_EXPR_IF を使うべきだ。

See Also

Requirements

Header: <boost/preprocessor/control/expr_iif.hpp>

Sample Code

#include <boost/preprocessor/comparison/and.hpp>
#include <boost/preprocessor/control/expr_iif.hpp>

#define INSERT_AND(p, q, text) \
    BOOST_PP_EXPR_IIF( \
        BOOST_PP_AND(p, q), \
        text \
    ) \
    /**/

INSERT_AND(2, 3, abc) // abc に展開される
INSERT_AND(0, 7, xyz) // 無に展開される