- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
class TString
{
public:
...
char len;
};
...
int GetWidth(TString& str)
{
if(&str==NULL)
return 0;
return str.len;
};
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+32.2
class TString
{
public:
...
char len;
};
...
int GetWidth(TString& str)
{
if(&str==NULL)
return 0;
return str.len;
};
Мрахахаха(фр)хахаха.
+28
COMMAND command;
BUFFER Buffer1;
BUFFER Buffer2;
...
byte NetSend(byte*& data, int& size)
{
byte fErr = NO_ERRORS;
char* const Data = (char* const)data;
if(Data != 0)
{
if(Data[0] != 0)
{
Buffer1.writeData(Data,size,NULL);
command='Send';
byte fErr=net.sendCommand(command,Buffer1);
}
else
{
Buffer2.writeData(Data,size,NULL);
command='SendFast';
byte fErr=net.sendCommand(command,Buffer2);
};
}
else
{
byte fErr=SEND_PARAM_ERROR;
}
return fErr;
};
Зачем же автор завёл два Buffer? :D
+26.2
#define nil 0
#define ERROR true
#define OK true
class CRenderer
{
...
bool DrawTrinagle(CVector A, CVector B, CVector C, int color)
...
};
...
bool CRenderer::DrawTrinagle(CVector A, CVector B, CVector C, int color)
{
if(this==nil)
return ERROR;
...
return OK;
};
Голова профессора Доуля...
+8.1
// файлToolStripMenuItem
//
this->файлToolStripMenuItem->Name = L"файлToolStripMenuItem";
this->файлToolStripMenuItem->Size = System::Drawing::Size(54, 22);
this->файлToolStripMenuItem->Text = L"Файл";
this->файлToolStripMenuItem->Click += gcnew System::EventHandler(this, &Form1::файлToolStripMenuItem_Click);
//
// Form1
//
this->AutoScaleDimensions = System::Drawing::SizeF(8, 16);
this->AutoScaleMode = System::Windows::Forms::AutoScaleMode::Font;
this->ClientSize = System::Drawing::Size(292, 260);
this->Controls->Add(this->button1);
this->Controls->Add(this->menuStrip1);
this->MainMenuStrip = this->menuStrip1;
this->Name = L"Form1";
this->Text = L"Form1";
this->menuStrip1->ResumeLayout(false);
this->menuStrip1->PerformLayout();
this->ResumeLayout(false);
this->PerformLayout();
}
#pragma endregion
private: System::Void button1_Click(System::Object^ sender, System::EventArgs^ e) {
}
private: System::Void меню1ToolStripMenuItem_Click(System::Object^ sender, System::EventArgs^ e) {
}
private: System::Void файлToolStripMenuItem_Click(System::Object^ sender, System::EventArgs^ e) {
}
private: System::Void выходToolStripMenuItem_Click(System::Object^ sender, System::EventArgs^ e) {
}
};
MS VS 2005 - MS VS 2008 это спокойно компилирует, да ещё и сама код генерирует, когда на формочке рисуешь русское меню.
Этот компилятор определённо соответсвует стандарту С++.
+13.1
...
class TCar
{
public:
TCar(int Speed)
{
...
};
};
...
void destroy_Car(TCar Car)
{
...
};
...
void GameLogic()
{
...
destroy_Car(50);
...
};
...
Хорошая логика...
+12.2
TMutex CriticalGlobalRTOSMutex;
...
void CriticalDoing()
{
CriticalGlobalRTOSMutex.Lock();
...
if( !HorriblyDoing(...) )
{
throw FatalException;
};
...
CriticalGlobalRTOSMutex.UnLock();
};
...
Мне уже страшно...
+12.1
class TIntArray
{
char buf[10000];
int operator[](int Index);
};
...
void main()
{
TIntArray a;
...
memset(&a[1],0.0f,sizeof(TIntArray));
...
};
Меня этот кот довёл до слёз...
+13.1
#define REGISTER_PACKET(cls, type)\
__declspec(selectany) PacketType cls::s_type = CPacketFactory::RegisterPacket(type, cls::CreateNew); \
__pragma(comment(linker, "/include:?s_type@##cls##@@2W4PacketType@@C"))
Очень правильный код... Делать можно только так.
+7.2
float *val32;
val32 = new(float);
*val32 = 0.0f;
memcpy((float*)(((char*)val32)+0), buf+(i*4)+0, 1);
memcpy((float*)(((char*)val32)+1), buf+(i*4)-1, 1);
memcpy((float*)(((char*)val32)+2), buf+(i*4)+2, 1);
memcpy((float*)(((char*)val32)+3), buf+(i*4)+1, 1);
int value = device->DownValue32(*val32, start + (i*2) - 2);
free (val32);
Заводить переменные с стеке это для лохов. Реальные пацаны все выделяют в стеке.
+7
std::string s1;
std::string s2;
int ret = strcmp(s1.c_str(), s2.c_str()); //А здесь мы сравниваем строки
if (ret == 0)
{
....
}