Guest User

Untitled

a guest
Jan 22nd, 2018
90
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.51 KB | None | 0 0
  1. #include <boost/preprocessor/arithmetic/inc.hpp>
  2. #include <boost/preprocessor/arithmetic/dec.hpp>
  3. #include <boost/preprocessor/list/cat.hpp>
  4. #include <boost/preprocessor/repetition/repeat_from_to.hpp>
  5.  
  6. template <typename T, typename U>
  7. struct foo : T, U {};
  8.  
  9. #define TYPEDEF_FOO(z, n, type) typedef foo<BOOST_PP_CAT(T, n), BOOST_PP_CAT(T, BOOST_PP_DEC(n))> BOOST_PP_CAT(T, BOOST_PP_INC(n));
  10.  
  11. struct T0 {};
  12.  
  13. struct T1 {};
  14.  
  15. #define N 256
  16.  
  17. BOOST_PP_REPEAT_FROM_TO(1, N, TYPEDEF_FOO, T)
  18.  
  19. int main()
  20. {
  21. BOOST_PP_CAT(T, N) x;
  22. }
Add Comment
Please, Sign In to add comment