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

    −30

    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
    BOOL CIniFile::LoadIniFile()
    {
      CString csBuff;
      CFile oIniFile;
      if (oIniFile.Open(csIniFileName, CFile::modeRead))
      {
        ULONGLONG lenReal = oIniFile.GetLength();
        DWORD dwLen = (DWORD) lenReal;
        if (lenReal > UINT_MAX)
        {
          dwLen = UINT_MAX;
          TRACE("ERROR: CIniFile::LoadIniFile();  CFIle::GetLength() > UINT_MAX\n;");
          ASSERT(0);
        }
        if (!dwLen)
          return FALSE;
        boost::scoped_array <char> cBuffer(new char[dwLen]);
        oIniFile.Read(cBuffer.get(), dwLen);
        LoadIniFromBuffer(cBuffer.get(), dwLen);
        oIniFile.Close();
        if (GetCountRecords())
          return TRUE;
      }
      return FALSE;
    }

    boost::scoped_array... nuff said =(

    kovyl2404, 05 Июня 2012

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

    −43

    1. 1
    bool ok = (state == 0) ? false : true;

    И это пишет человек, пишущий на плюсах уже много лет...

    glook, 05 Июня 2012

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

    −34

    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
    int ConditionsTuple(const bool Condition1, const bool Condition2)
    {
    	return (Condition1<<1) + Condition2;
    }
    
    template <bool Condition1, bool Condition2>
    struct TConditionsTuple
    {
    	enum {Result = (Condition1<<1) + Condition2};
    };
    
    float SignedIf(const bool Condition)
    {
    	return Condition ? -1 : 1;
    }
    
    switch (ConditionsTuple(
    					bExpr1,
    					bExpr2
    					))
    	{
    		case TConditionsTuple<1, 1>::Result:
    			return PArc(new TArc(
    							CouplePointAtPrimitive1,
    							CouplePointAtPrimitive2,
    							ArcCoupleCenter,
    							Abs(arcCoupleRadius)
    							));
    		case TConditionsTuple<0, 1>::Result:
    			throw TPrimitive1HalfLengthExpiredException();
    		case TConditionsTuple<1, 0>::Result:
    			throw TPrimitive2HalfLengthExpiredException();
    		case TConditionsTuple<0, 0>::Result:
    			throw TAllPrimitivesHalfLengthExpiredException();			
    	}

    Говногость, 04 Июня 2012

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

    −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
    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
    bool EvtDecay::isCharm(EvtId xid){
    EvtId d0    = EvtPDL::getId(std::string("D0"));
    EvtId d0bar = EvtPDL::getId(std::string("anti-D0"));
    EvtId dp    = EvtPDL::getId(std::string("D+"));
    EvtId dm    = EvtPDL::getId(std::string("D-"));
    EvtId d0h   = EvtPDL::getId(std::string("D0H"));
    EvtId d0l    = EvtPDL::getId(std::string("D0L"));
    EvtId dstp   = EvtPDL::getId(std::string("D*+"));
    EvtId dstm   = EvtPDL::getId(std::string("D*-"));
    EvtId ds0    = EvtPDL::getId(std::string("D*0"));
    EvtId ds0bar = EvtPDL::getId(std::string("anti-D*0"));
    EvtId dsp    = EvtPDL::getId(std::string("D_s+"));
    EvtId dsm    = EvtPDL::getId(std::string("D_s-"));
    EvtId dsstp  = EvtPDL::getId(std::string("D_s*+"));
    EvtId dsstm  = EvtPDL::getId(std::string("D_s*-"));
    EvtId ds0stp = EvtPDL::getId(std::string("D_s0*+"));
    EvtId ds0stm = EvtPDL::getId(std::string("D_s0*-"));
    
     std::vector<EvtId> Vid; Vid.clear();
     Vid.push_back(d0);
     Vid.push_back(d0bar);
     Vid.push_back(dp);
     Vid.push_back(dm);
     Vid.push_back(d0h);
     Vid.push_back(d0l);
     Vid.push_back(dstp);
     Vid.push_back(dstm);
     Vid.push_back(ds0);
     Vid.push_back(ds0bar );
     Vid.push_back(dsp );
     Vid.push_back(dsm );
     Vid.push_back(dsstp );
     Vid.push_back(dsstm );
     Vid.push_back(ds0stp );
     Vid.push_back(ds0stm );
    
     bool flag=true;
     for(int i=0;i<Vid.size();i++){ if(xid == Vid[i]) return flag;}
     return false;
    }

    физика высоких энергий, китайский говнокод

    blah, 04 Июня 2012

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

    −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
    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
    template<class TValueChanger>
        NContour::NPrimitives::PArc ChangePrimitive(NContour::NPrimitives::PArc Arc, const TValueChanger& ValueChanger)
        {
            return ValueChanger(Arc);
        }
    
        template<class TValueChanger>
        NContour::NPrimitives::PLine ChangePrimitive(NContour::NPrimitives::PLine Line, const TValueChanger& ValueChanger)
        {
            return ValueChanger(Line);
        }
    
    template<class TValueChanger1, class TValueChanger2>
        NContour::NPrimitives::PArc ChangePrimitive(NContour::NPrimitives::PArc Arc, const TValueChanger1& ValueChanger1, const TValueChanger2& ValueChanger2)
        {
            return ValueChanger2(ValueChanger1(Arc));
        }
    
        template<class TValueChanger1, class TValueChanger2>
        NContour::NPrimitives::PLine ChangePrimitive(NContour::NPrimitives::PLine Line, const TValueChanger1& ValueChanger1, const TValueChanger2& ValueChanger2)
        {
            return ValueChanger2(ValueChanger1(Line));
        }
    
    //...
    
    template<class TValueChanger1, class TValueChanger2, class TValueChanger3, class TValueChanger4, class TValueChanger5, class TValueChanger6>
        NContour::NPrimitives::PArc ChangePrimitive(NContour::NPrimitives::PArc Arc, const TValueChanger1& ValueChanger1, const TValueChanger2& ValueChanger2, const TValueChanger3& ValueChanger3, const TValueChanger4& ValueChanger4, const TValueChanger5& ValueChanger5, const TValueChanger6& ValueChanger6)
        {
            return ValueChanger6(ValueChanger5(ValueChanger4(ValueChanger3(ValueChanger2(ValueChanger1(Arc))))));
        }
    
        template<class TValueChanger1, class TValueChanger2, class TValueChanger3, class TValueChanger4, class TValueChanger5, class TValueChanger6>
        NContour::NPrimitives::PLine ChangePrimitive(NContour::NPrimitives::PLine Line, const TValueChanger1& ValueChanger1, const TValueChanger2& ValueChanger2, const TValueChanger3& ValueChanger3, const TValueChanger4& ValueChanger4, const TValueChanger4& ValueChanger5, const TValueChanger6& ValueChanger6)
        {
            return ValueChanger6(ValueChanger5(ValueChanger4(ValueChanger3(ValueChanger2(ValueChanger1(Line))))));
        }

    Говногость, 04 Июня 2012

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

    −28

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    command = QString("sh -c \"echo \"nameserver %1\" > /etc/resolv.conf\"")
                  .arg(nameserver.toString());
    
    QProcess process;
    process.start(command);

    Zielscheibe, 04 Июня 2012

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

    −30

    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
    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
    66. 66
    67. 67
    68. 68
    69. 69
    70. 70
    71. 71
    72. 72
    73. 73
    74. 74
    75. 75
    76. 76
    77. 77
    78. 78
    79. 79
    80. 80
    81. 81
    82. 82
    83. 83
    84. 84
    85. 85
    86. 86
    87. 87
    88. 88
    89. 89
    90. 90
    91. 91
    #include <iostream>
    #include <conio.h>
    
    
    using namespace std;
    
    
    char* find(char* str)
    {
    	int i = 0, mlen=0;
    	char* minword = new char[100];
    	char* curword = new char[100];
    	while(str[i]==' ') i++;
    	mlen = i;
    	while((str[mlen]!=' ')&&(str[mlen])) mlen++;
    	mlen -= i;
    	strncpy(minword, str+i, mlen);
    	minword[mlen] = '\0';
    	i += mlen;
    	while(str[i])
    	{		
    		while(str[i]==' ') i++;
    		mlen = i;
    		while((str[mlen]!=' ')&&(str[mlen])) mlen++;
    		mlen -= i;
    		strncpy(curword, str+i, mlen);
    		curword[mlen] = '\0';
    		i += mlen;
    		
    		if(strcmp(minword, curword) > 0)
    		{
    			strcpy(minword, curword);
    		}
    	}
    	return minword;
    }
    
    void del(char*& str, char* str2)
    {
    	int i = 0, j =0, st=0;
    	char* nstr = new char[200];
    	
    	while(str[i])
    	{
    			j = 0;
    			while(str[i]==str2[j])
    			{
    				i++; j++;
    			}
    			if(j==strlen(str2))
    			{
    				strncpy(nstr, str+st, i-j);
    				nstr[i-j] = '\0';
    				st = i;
    				break;
    			}
    			i++;
    	}
    	strcat(nstr, str+st);
    	str = nstr;
    }
    
    
    void sort(char*& str)
    {
    	int len = strlen(str);
    	char* nstr = new char[200];
    	char* buf = new char[200];
    	buf = find(str);
    	strcpy(nstr, buf);
    	del(str, buf);
    	while(strlen(nstr) != len)
    	{
    		buf = find(str);
    		strcat(nstr, " ");
    		strcat(nstr, buf);
    		del(str, buf);
    	}
    	nstr[len] = '\0';
    	str = nstr;
    }
    
    
    
    void main()
    {
    	char* str = new char[200];
    	str = "my little pony";
    	sort(str);
    	cout<<str;
    }

    Из вузовского компьютера.

    dos_, 03 Июня 2012

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

    −52

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    /// Get the x-axis
    b2Vec2 GetXAxis() const
    {
    	return b2Vec2(c, s);
    }
    
    /// Get the u-axis
    b2Vec2 GetYAxis() const
    {
    	return b2Vec2(-s, c);
    }

    Box2D, говнокомментарий

    tymofey, 01 Июня 2012

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

    −43

    1. 1
    int eger;

    dos_, 30 Мая 2012

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

    −32

    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
    #pragma once
    
    #include <vector>
    #include <assert.h>
    
    class Obj
    {
    public:
    	virtual ~Obj(void) { }
    };
    
    
    class Sig
    {
    	typedef void (Obj::*slot_t)(void*);
    	mutable std::vector<std::pair<Obj*, Sig::slot_t>> m_connSlots;
    
    public:
    	void operator()(void* arg) const
    	{
    		std::vector< std::pair<Obj *, slot_t> >::const_iterator iter = m_connSlots.cbegin();
    		while(iter != m_connSlots.cend())
    		{
    			Obj * object = iter->first;
    			slot_t slot = iter->second;
    			(object->*slot)(arg);
    			iter++;
    		}
    	}
    
    	template<class obj_T> void connect(obj_T* object, void (obj_T::*slot)(void*)) const
    	{
    		assert(dynamic_cast<Obj*>(object)!=0);
    		m_connSlots.push_back(std::make_pair(reinterpret_cast<Obj*>(object),
    			reinterpret_cast<Sig::slot_t>(slot)));
    	}
    };

    QBicycle

    Xom94ok, 30 Мая 2012

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