1. C++ / Говнокод #7689

    +165

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    class Exception {
      public:
        Exception() { }
        Exception(const char *fmt, ...) {
          va_list  argPtr;
          va_start(argPtr, fmt);
          Str_VSPrintf(desc, sizeof(desc), fmt, argPtr);
          va_end(argPtr);
    
          throw(*this);
        }
    
        char desc[8096];
      };

    http://www.gamedev.ru/code/forum/?id=151712#m6

    >Всё работает иа рад :)

    CPPGovno, 29 Августа 2011

    Комментарии (112)
  2. C++ / Говнокод #7688

    +159

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    //Я думал тоже так сделать, но иногда для параметра нужны дополнительные аргументы. Например есть operator()(float, int preciseness). С запятыми такого не сделаешь. Я это применил в своих массивах. Можно написать так:
    Array<int> arr;
    arr.Init(), 5, 7, 65, 99, 267; //Инициализирует массива числами, перечисленными через запятую
    //Кстати, сделал такое добавление в массив:
    arr.Insert(0), 5, 7, 3; //Добавляет числа вначало массива
    arr.Insert($), 888, 25, 76; //Добавляет в конец
    arr.Insert($/2), 65, 23; //В середину
    //Знак доллара сделал для схожести с языком D. Теперь не надо писать arr.length, можно писать $. Вообще, это должно быть медленнее, но компилятор оптимизирует и по тестам получается так же.
    //P. S. В govnokod.ru не заносить.

    http://www.gamedev.ru/code/forum/?id=148200&page=6#m76

    CPPGovno, 29 Августа 2011

    Комментарии (105)
  3. C++ / Говнокод #7686

    +161

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    class CmyBuffaer{};
    
    template< typename TYPE > CmyBuffaer& operator,( CmyBuffaer& buffer, typename TYPE arg);
    
    template<> CmyBuffaer& operator,<double>( CmyBuffaer& buffer, double arg)
    {
      printf("%f",arg);
      return buffer;
    }
    template<> CmyBuffaer& operator,<const char*>( CmyBuffaer& buffer, const char* arg)
    {
      printf("%s",arg);
      return buffer;
    }
    template<> CmyBuffaer& operator,<int>( CmyBuffaer& buffer, int arg)
    {
      printf("%i",arg);
      return buffer;
    }
    //...
    CmyBuffaer(),34.5,"+",54,"+\n";

    CPPGovno, 29 Августа 2011

    Комментарии (14)
  4. C++ / Говнокод #7682

    +147

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    int main(int argc, char* argv[])
    {
      std::cout<<"Good testing!\n";
      system("PAUSE"); 
      return 0;
    }

    http://www.gamedev.ru/code/forum/?id=151702

    Привет!
    Есть окно на DX9, как вывести текст?
    Делаю так:
    Создал файл txt.cpp.
    В итоге выводит только окно.
    Как вывести текст в DirectX 3D или можно по-другому?

    CPPGovno, 28 Августа 2011

    Комментарии (7)
  5. C++ / Говнокод #7681

    +162

    1. 1
    2. 2
    3. 3
    #define      my__type    ((pair<LPVOID, CheckButton_Thread*>*)pvPararn)
    
    my__type -> second -> function( my__type -> first);

    http://www.gamedev.ru/code/forum/?id=151690#m11

    >О ужас, но у меня получилось! :)
    Сказал автор темы и выдал результат труда.

    CPPGovno, 28 Августа 2011

    Комментарии (33)
  6. C++ / Говнокод #7677

    +165

    1. 1
    std::cout << [&i](){return i;}();

    И вот ещё одна жертва стандарта. На этот раз она в пасть лезет добровольно.

    Говногость, 28 Августа 2011

    Комментарии (19)
  7. C++ / Говнокод #7676

    +167

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    return parse(
            str,
            ( ( lexeme_d[+alnum_p][assign_a(key)] >> ':' >> lexeme_d[ '"' >> ( *~ch_p('"') )[insert_at_a(mp,key)] >> '"' ] ) % ',' ),
            space_p
        ).full;

    Говногость, 28 Августа 2011

    Комментарии (14)
  8. C++ / Говнокод #7675

    +166

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    #include "alloca.h"
    //...
    template<class o>
    o*MakeOAtStack(){
    return (o*)alloca(sizeof(o));};//;;;Оптимизировоной operator new nothrow

    Говногость, 28 Августа 2011

    Комментарии (8)
  9. C++ / Говнокод #7674

    +161

    1. 1
    2. 2
    3. 3
    4. 4
    String str=String::Format("a=<^>, b=<^>, c=\"<^>\"")(a)(b, 4)(c);  //str будет равно: a=234, b=32422.1231, c="Текст"
    str=String::Format(nullptr)(a)("+")(b, 4)("=")(a+b, 4);  //str будет равно: 234+32422.1231=32656.1231
    str=String::Format("<^><^>")(5);  //Выбрасывает исключение, так как переданы не все аргументы
    str=String::Format("<^>")(3252)(3.1415926);  //Выбрасывает исключение, так как передан лишний аргумент

    Форматирование строк с помощью смайликов.

    http://www.gamedev.ru/code/forum/?id=148200&page=4#m55

    CPPGovno, 27 Августа 2011

    Комментарии (14)
  10. C++ / Говнокод #7673

    +158

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    DWORD WINAPI SexToClient(LPVOID client_socket) // Поток для клиента 
    { 
    SOCKET my_sock; 
    my_sock=((SOCKET *) client_socket)[0]; 
    char buffer[1024] = {0}; 
    int ral;
    
    while(1){ 
    ral =recv (my_sock,&buffer[0],sizeof(buffer), 0); 
    if(ral == SOCKET_ERROR) 
    {std::cout << "хуй" << "\n";} 
    else{ 
    std::cout << buffer << "\n"; 
    } 
    }
    
    closesocket(my_sock); 
    return 0; 
    }

    http://www.gamedev.ru/code/forum/?id=151671

    CPPGovno, 27 Августа 2011

    Комментарии (12)