BOOST_PP_SEQ_SIZE还可以展示一下,BEGIN BOOST_PP_SEQ_FOLD_LEFT(SUB_S, 22, SEQ) == 10 END直接生产了2.6M的log过程。
# define SEQ (4)(1)(5)(2)
开始处理代码:BOOST_PP_SEQ_SIZE(SEQ)
//—————————————-
开始展开函数宏: @@@@ BOOST_PP_SEQ_SIZE(SEQ) @@
//—————————————-
对实参SEQ进行展开
//—————————————-
开始处理代码:SEQ
//—————————————-
开始展开对象宏: @@@@ SEQ @@
//—————————————-
对象宏SEQ进行直接替换,结果为:(4)(1)(5)(2)
//—————————————-
开始处理代码:(4)(1)(5)(2)
//—————————————-
对代码(4)(1)(5)(2)
宏替换的最终结果为:(4)(1)(5)(2)
//—————————————-
对象宏SEQ展开的最终结果为:(4)(1)(5)(2)
//—————————————-
对代码SEQ宏替换的最终结果为:(4)(1)(5)(2)
//—————————————-
实参SEQ展开的最终结果:(4)(1)(5)(2)
//—————————————-
函数宏的调用BOOST_PP_SEQ_SIZE(SEQ)对宏体BOOST_PP_CAT(BOOST_PP_SEQ_SIZE_, BOOST_PP_SEQ_SIZE_0 seq)
进行实参替换的结果为:BOOST_PP_CAT(BOOST_PP_SEQ_SIZE_, BOOST_PP_SEQ_SIZE_0 (4)(1)(5)(2))
//—————————————-
开始处理代码:BOOST_PP_CAT(BOOST_PP_SEQ_SIZE_, BOOST_PP_SEQ_SIZE_0 (4)(1)(5)(2))
//—————————————-
开始展开函数宏: @@@@ BOOST_PP_CAT(BOOST_PP_SEQ_SIZE_, BOOST_PP_SEQ_SIZE_0 (4)(1)(5)(2)) @@
//—————————————-
对实参BOOST_PP_SEQ_SIZE_进行展开
//—————————————-
开始处理代码:BOOST_PP_SEQ_SIZE_
//—————————————-
对代码BOOST_PP_SEQ_SIZE_宏替换的最终结果为:BOOST_PP_SEQ_SIZE_
//—————————————-
实参BOOST_PP_SEQ_SIZE_展开的最终结果:BOOST_PP_SEQ_SIZE_
//—————————————-
对实参BOOST_PP_SEQ_SIZE_0 (4)(1)(5)(2)进行展开
//—————————————-
开始处理代码:BOOST_PP_SEQ_SIZE_0 (4)(1)(5)(2)
//—————————————-
开始展开函数宏: @@@@ BOOST_PP_SEQ_SIZE_0 (4) @@ (1)(5)(2)
//—————————————-
函数宏的调用BOOST_PP_SEQ_SIZE_0(4)对宏体BOOST_PP_SEQ_SIZE_1
进行实参替换的结果为:BOOST_PP_SEQ_SIZE_1
//—————————————-
开始处理代码:BOOST_PP_SEQ_SIZE_1
//—————————————-
对代码BOOST_PP_SEQ_SIZE_1
宏替换的最终结果为:BOOST_PP_SEQ_SIZE_1
//—————————————-
开始展开函数宏: @@@@ BOOST_PP_SEQ_SIZE_1(1) @@ (5)(2)
//—————————————-
函数宏的调用BOOST_PP_SEQ_SIZE_1(1)对宏体BOOST_PP_SEQ_SIZE_2
进行实参替换的结果为:BOOST_PP_SEQ_SIZE_2
//—————————————-
开始处理代码:BOOST_PP_SEQ_SIZE_2
//—————————————-
对代码BOOST_PP_SEQ_SIZE_2
宏替换的最终结果为:BOOST_PP_SEQ_SIZE_2
//—————————————-
开始展开函数宏: @@@@ BOOST_PP_SEQ_SIZE_2(5) @@ (2)
//—————————————-
函数宏的调用BOOST_PP_SEQ_SIZE_2(5)对宏体BOOST_PP_SEQ_SIZE_3
进行实参替换的结果为:BOOST_PP_SEQ_SIZE_3
//—————————————-
开始处理代码:BOOST_PP_SEQ_SIZE_3
//—————————————-
对代码BOOST_PP_SEQ_SIZE_3
宏替换的最终结果为:BOOST_PP_SEQ_SIZE_3
//—————————————-
开始展开函数宏: @@@@ BOOST_PP_SEQ_SIZE_3(2) @@
//—————————————-
函数宏的调用BOOST_PP_SEQ_SIZE_3(2)对宏体BOOST_PP_SEQ_SIZE_4
进行实参替换的结果为:BOOST_PP_SEQ_SIZE_4
//—————————————-
开始处理代码:BOOST_PP_SEQ_SIZE_4
//—————————————-
对代码BOOST_PP_SEQ_SIZE_4
宏替换的最终结果为:BOOST_PP_SEQ_SIZE_4
//—————————————-
对代码BOOST_PP_SEQ_SIZE_0 (4)(1)(5)(2)宏替换的最终结果为: BOOST_PP_SEQ_SIZE_4
//—————————————-
实参BOOST_PP_SEQ_SIZE_0 (4)(1)(5)(2)展开的最终结果:BOOST_PP_SEQ_SIZE_4
//—————————————-
函数宏的调用BOOST_PP_CAT(BOOST_PP_SEQ_SIZE_, BOOST_PP_SEQ_SIZE_0 (4)(1)(5)(2))对宏体BOOST_PP_CAT_I(a, b)
进行实参替换的结果为:BOOST_PP_CAT_I(BOOST_PP_SEQ_SIZE_, BOOST_PP_SEQ_SIZE_4)
//—————————————-
开始处理代码:BOOST_PP_CAT_I(BOOST_PP_SEQ_SIZE_, BOOST_PP_SEQ_SIZE_4)
//—————————————-
开始展开函数宏: @@@@ BOOST_PP_CAT_I(BOOST_PP_SEQ_SIZE_, BOOST_PP_SEQ_SIZE_4) @@
//—————————————-
函数宏的调用BOOST_PP_CAT_I(BOOST_PP_SEQ_SIZE_, BOOST_PP_SEQ_SIZE_4)对宏体a ## b
进行实参替换的结果为:BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_4
//—————————————-
开始处理代码:BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_4
//—————————————-
开始展开对象宏: @@@@ BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_4 @@
//—————————————-
对象宏BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_4进行直接替换,,结果为:4
//—————————————-
开始处理代码:4
//—————————————-
对代码4
宏替换的最终结果为:4
//—————————————-
对象宏BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_4展开的最终结果为:4
//—————————————-
对代码BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_4
宏替换的最终结果为: 4
//—————————————-
函数宏的调用BOOST_PP_CAT_I(BOOST_PP_SEQ_SIZE_, BOOST_PP_SEQ_SIZE_4)展开的最终结果为:BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_4
//—————————————-
对代码BOOST_PP_CAT_I(BOOST_PP_SEQ_SIZE_, BOOST_PP_SEQ_SIZE_4)
宏替换的最终结果为: 4
//—————————————-
函数宏的调用BOOST_PP_CAT(BOOST_PP_SEQ_SIZE_, BOOST_PP_SEQ_SIZE_0 (4)(1)(5)(2))展开的最终结果为:BOOST_PP_CAT_I(BOOST_PP_SEQ_SIZE_, BOOST_PP_SEQ_SIZE_4)
//—————————————-
对代码BOOST_PP_CAT(BOOST_PP_SEQ_SIZE_, BOOST_PP_SEQ_SIZE_0 (4)(1)(5)(2))
宏替换的最终结果为: 4
//—————————————-
函数宏的调用BOOST_PP_SEQ_SIZE(SEQ)展开的最终结果为:BOOST_PP_CAT(BOOST_PP_SEQ_SIZE_, BOOST_PP_SEQ_SIZE_0 (4)(1)(5)(2))
//—————————————-
对代码BOOST_PP_SEQ_SIZE(SEQ)
宏替换的最终结果为: 4
一个人的天地是冷得连呼吸都会寂寞的颤栗,而麻烦,