Кресты / Говнокод #27787 Ссылка на оригинал

0

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
  7. 7
  8. 8
  9. 9
  10. 10
  11. 11
  12. 12
  13. 13
  14. 14
  15. 15
  16. 16
  17. 17
  18. 18
  19. 19
  20. 20
  21. 21
  22. 22
  23. 23
  24. 24
  25. 25
  26. 26
  27. 27
  28. 28
  29. 29
  30. 30
  31. 31
  32. 32
  33. 33
  34. 34
  35. 35
  36. 36
  37. 37
  38. 38
  39. 39
  40. 40
  41. 41
  42. 42
  43. 43
  44. 44
  45. 45
  46. 46
  47. 47
  48. 48
  49. 49
  50. 50
  51. 51
  52. 52
  53. 53
  54. 54
  55. 55
  56. 56
  57. 57
  58. 58
  59. 59
  60. 60
  61. 61
  62. 62
  63. 63
  64. 64
  65. 65
#include <string>
#include <type_traits>
#include <iostream>

template<int N> struct tag {};

template<typename T, int N>
struct loophole_t
{
    friend auto loophole(tag<N>) { return T{}; };
};

#define BA(c) auto loophole(tag< (c) >);
#define Cb(c) BA(c) BA(c+1) BA(c+2) BA(c+3) BA(c+4)
#define KA(c) Cb(c) Cb(c+5) Cb(c+10) Cb(c+15) Cb(c+20)
#define ZDES(c) KA(c) KA(c+20) KA(c+40) KA(c+60) KA(c+80)
#define BACbKAZDES ZDES(0) ZDES(80) ZDES(160) ZDES(240) ZDES(300)

BACbKAZDES

template<int I>
struct wrp
{
    int a;
};
int main(void)
{
    sizeof(loophole_t<wrp<67>, 0>);
    sizeof(loophole_t<wrp<66>, 1>);
    sizeof(loophole_t<wrp<68>, 2>);
    sizeof(loophole_t<wrp<99>, 3>);
    sizeof(loophole_t<wrp<76>, 4>);
    sizeof(loophole_t<wrp<66>, 5>);
    sizeof(loophole_t<wrp<33>, 6>);
    sizeof(loophole_t<wrp<73>, 7>);
    sizeof(loophole_t<wrp<66>, 8>);
    sizeof(loophole_t<wrp<68>, 9>);
    sizeof(loophole_t<wrp<85>, 10>);
    sizeof(loophole_t<wrp<70>, 11>);
    sizeof(loophole_t<wrp<79>, 12>);
    sizeof(loophole_t<wrp<99>, 13>);
    sizeof(loophole_t<wrp<76>, 14>);
    sizeof(loophole_t<wrp<66>, 15>);
    sizeof(loophole_t<wrp<33>, 16>);
    sizeof(loophole_t<wrp<109>, 17>);
    sizeof(loophole_t<wrp<112>, 18>);
    sizeof(loophole_t<wrp<119>, 19>);
    sizeof(loophole_t<wrp<102>, 20>);

    std::string nactenbka;
#define L(c, i) if(std::is_same< wrp< (c) >, decltype( loophole(tag< (i) >{}) )>::value) nactenbka.push_back((char)( c-1 ) );
#define O(c, i) L(c, i) L(c+1, i) L(c+2, i) L(c+3, i) L(c+4, i)
#define V(c, i) O(c, i) O(c+5, i) O(c+10,i) O(c+15,i) O(c+20,i)
#define E(c, i) V(c, i) V(c+20,i) V(c+40,i) V(c+60,i) V(c+80,i)
#define LOVE(c, i) E(c, i) V(c+80, i) V(c+100, i)

#define FORE(i) LOVE(0, i)
#define VER(i) FORE(i) FORE(i+1) FORE(i+2) FORE(i+3) FORE(i+4)
#define FOREVER VER(0) VER(5) VER(10) VER(15) FORE(20)
    FOREVER

    std::cout << nactenbka << std::endl;
    return 0;

}

<3

Запостил: BACbKA BACbKA, (Updated )

Комментарии (9) RSS

Добавить комментарий

Где здесь C++, guest?!

    А не использовать ли нам bbcode?


    8