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

    +33

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    class Chatter : public QListBoxItem {
        [...]
        private:
            static ChatterRef *chatters[MAX_NUM_CHATTERS];
            [...]
            friend int main(int, char *argv[]);	// to destroy chatters[]
    };

    Сам проект: http://www.qtchat.org/qtchat/
    Пример дается в этой книге: http://books.google.ru/books?id=8lYbNfsAVT4C&dq=qtchat&source=g bs_navlinks_s как пример friend-функций

    myaut, 07 Октября 2012

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

    +36

    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
    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
    gp_terrains.at(0)->draw();
    		//it took me only 50 lines of spaghetti code to implement the spiral layout					
    		//direction 1 for +x, 2 for +y, 3: -x, 0: -y
    		int repetition_count = 1;
    		int i = 1;
    		int direction = 0;
    		while(i < (int)gp_terrains.size()) {
    			for (int k = 0; k < 2; k++) {
    				direction = (++direction) % 4;
    				for (int j = 0; j < repetition_count; j++) {
    					switch(direction) {
    						case 1: {
    							glTranslated(512, 0, 0);
    							gp_terrains.at(i)->draw();
    							
    							break;
    						}
    						case 2: {
    							glTranslated(0, 512, 0);
    							gp_terrains.at(i)->draw();
    							
    							break;
    						}
    						case 3: {
    							glTranslated(-512, 0, 0);
    							gp_terrains.at(i)->draw();
    							
    							break;
    						}
    						case 0: {
    							glTranslated(0, -512, 0);
    							gp_terrains.at(i)->draw();
    							
    							break;
    						}
    					}	
    					if (++i >= (int)gp_terrains.size())
    						break;
    				}
    				if (i >= (int)gp_terrains.size())
    						break;
    			}
    			if (i >= (int)gp_terrains.size())
    					break;
    			repetition_count++;

    catcall, 07 Октября 2012

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

    +20

    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
    D:\Sources\jimbot_at_cpp>make -f Makefile.win clean-full
    rm -f *.o lib.a dist/jimbot.exe
    
    D:\Sources\jimbot_at_cpp>make -f Makefile.win lib
    gcc -c sqlite3.c -pipe -O2 -g1 DSQLITE_THREADSAFE=1
    gcc.exe: error: DSQLITE_THREADSAFE=1: No such file or directory
    make: *** [lib] Error 1
    
    D:\Sources\jimbot_at_cpp>make -f Makefile.win
    g++ -c *.cpp -std=c++0x -O2 -g1 -pipe -Wno-deprecated -Wno-write-strings -Wno-de
    precated-declarations  -DDEBUG -DEASTER -DTESTER
    g++  -o dist/jimbot -pipe *.o -O2 -g1 lib.a -lpthread -lgnutls -lwsock32 -ladvap
    i32 -lcrypt32 -lsecur32 -ldnsapi -liconv
    g++.exe: error: lib.a: No such file or directory
    make: *** [all] Error 1
    
    D:\Sources\jimbot_at_cpp>

    JavaCoder, 06 Октября 2012

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

    +29

    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
    template <class Monad>
       struct XMapM {
          template <class F, class M> struct Sig : FunType<F,M,
             typename RT<typename ::fcpp::BindM<Monad>::Type,M,typename LEType<
                LAM<LV<1>,CALL<typename ::fcpp::UnitM<Monad>::Type,
                CALL<F,LV<1> > > > >::Type>::ResultType> {};
          template <class F, class M>
          typename Sig<F,M>::ResultType
          operator()( const F& f, const M& m ) const {
             LambdaVar<1> A;
             return bindM<Monad>()( m, lambda(A)[ unitM<Monad>()[f[A]] ] );
          }
       };

    Хаскель не нужен.

    serpinski, 05 Октября 2012

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

    +28

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    std::string toString(std::function<std::string(T)> f = std::function<std::string(T)>()) {
       std::stringstream ss;
       if(f)
          ss << f(some_value);
       else
          ss << some_value;
       return ss.str();
    }

    an0nym, 03 Октября 2012

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

    +42

    1. 1
    2. 2
    3. 3
    4. 4
    objbase.h:
    
    #define __STRUCT__ struct
    #define interface __STRUCT__

    спасибо Микрософт за счастливое детство соответствие стандарту при засирании глобального неймспейса своими больными фантазиями

    defecate-plusplus, 03 Октября 2012

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

    +36

    1. 1
    printf("Aligment control: %d", sizeof(DataTransfer_T));

    LispGovno, 02 Октября 2012

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

    +35

    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
    22. 22
    23. 23
    24. 24
    25. 25
    26. 26
    27. 27
    void GetDPI ()
    {
    	jclass c; jmethodID m; jobject o, dm; jfieldID fxdpi, fydpi;
    
    	c = env->FindClass		("android/util/DisplayMetrics");
    	m = env->GetMethodID		(c, "<init>", "()V");
    	dm = env->NewObject		(c, m);
    
    	fxdpi = env->GetFieldID		(c, "xdpi", "F");
    	fydpi = env->GetFieldID		(c, "ydpi", "F");
    
    	c = env->FindClass		("android/app/NativeActivity");
    	m = env->GetMethodID		(c, "getWindowManager", "()Landroid/view/WindowManager;");
    	o = env->CallObjectMethod	(appState->activity->clazz, m);
    
    	c = env->GetObjectClass		(o);
    	m = env->GetMethodID		(c, "getDefaultDisplay", "()Landroid/view/Display;");
    	o = env->CallObjectMethod	(o, m);
    
    	c = env->GetObjectClass		(o);
    	m = env->GetMethodID		(c, "getMetrics", "(Landroid/util/DisplayMetrics;)V");
    	o = env->CallObjectMethod	(o, m, dm);
    
    	xdpi = env->GetFloatField	(dm, fxdpi);
    	ydpi = env->GetFloatField	(dm, fydpi);
    	LOGI("dpi is (%f, %f)", xdpi, ydpi);
    }

    Пишем под ведроид, дёргаем жабьи методы
    На жабе:
    DisplayMetrics d = new DisplayMetrics;
    getWindowManager.getDefaultDisplay.getMe trics(d);
    xdpi=d.xdpi;
    ydpi=d.ydpi;

    TarasB, 27 Сентября 2012

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

    +78

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    class woman{
    bool cute;
    bool beauty;
    if (cute == true)beauty = false;
    if (beauty == true)cute = false;
    }
    //made by God

    Досталась в наследство небольшая вселенная, а там это...

    serpinski, 24 Сентября 2012

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

    +34

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    int main()
    try
    {
    }
    catch (...)
    {
    }

    http://ideone.com/luh8p

    LispGovno, 24 Сентября 2012

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