fork download
  1. #include <bitset>
  2. #include <iostream>
  3.  
  4. template <template <size_t> class F>
  5. void run() {}
  6.  
  7. template <template <size_t> class F, size_t H, size_t... Tail>
  8. void run() { F<H>()(); run<F, Tail...>(); }
  9.  
  10. template <size_t N>
  11. struct BitSetPlay {
  12. void operator()() {
  13. std::bitset<N> b;
  14. b.flip();
  15. std::cout << b.to_ulong() << "\n";
  16. }
  17. };
  18.  
  19. int main() {
  20. run<BitSetPlay, 1u, 2u, 3u, 4u, 5u, 6u, 7u, 8u, 9u, 10u>();
  21. return 0;
  22. }
Success #stdin #stdout 0s 3340KB
stdin
Standard input is empty
stdout
1
3
7
15
31
63
127
255
511
1023