最終更新日時:
が更新

履歴 編集

BOOST_PP_ITERATION_DEPTH

BOOST_PP_ITERATION_DEPTH マクロは現在の ファイル繰り返し の深さに展開される。

Usage

BOOST_PP_ITERATION_DEPTH()

Remarks

もし ファイル繰り返し が進行中でなければ、このマクロは 0 に展開される。 相でなければ ファイル繰り返し の現在の深さに展開される。

Requirements

Header: <boost/preprocessor/iteration/iterate.hpp>

Sample Code

// file.h
#if !BOOST_PP_IS_ITERATING

    #ifndef FILE_H_
    #define FILE_H_

    #include <boost/preprocessor/iteration/iterate.hpp>

    #define BOOST_PP_ITERATION_PARAMS_1 (3, (1, 3, "file.h"))
    #include BOOST_PP_ITERATE()

    #endif

#elif BOOST_PP_ITERATION_DEPTH() == 1

    + depth BOOST_PP_ITERATION_DEPTH()
    // ...

    #define BOOST_PP_ITERATION_PARAMS_2 \
        (3, (1, BOOST_PP_ITERATION(), "file.h")) \
        /**/

    #include BOOST_PP_ITERATE()

#elif BOOST_PP_ITERATION_DEPTH() == 2

    - depth BOOST_PP_ITERATION_DEPTH()
    // ...

#endif