- 1
- 2
- 3
- 4
- 5
- 6
erl -run moduleful_of_elaborate_business_logic validate_data -noshell > erl.log
if grep -E '(CRASH REPORT|ERROR REPORT|Error|Crash)' erl.log
then
echo "Validation failed"
exit 1
fi
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
Всего: 86
−52
erl -run moduleful_of_elaborate_business_logic validate_data -noshell > erl.log
if grep -E '(CRASH REPORT|ERROR REPORT|Error|Crash)' erl.log
then
echo "Validation failed"
exit 1
fi
Найдено в продакшне.
+165
ID3DBlob* pErrorBlob;
hr = D3DX11CompileFromFile( szFileName, NULL, NULL, szEntryPoint, szShaderModel,
dwShaderFlags, 0, NULL, ppBlobOut, &pErrorBlob, NULL );
if( FAILED(hr) )
{
if( pErrorBlob != NULL )
OutputDebugStringA( (char*)pErrorBlob->GetBufferPointer() );
if( pErrorBlob ) pErrorBlob->Release();
return hr;
}
if( pErrorBlob ) pErrorBlob->Release();
Текст примера из MS DXSDK. Проверка - а вдруг pErrorBlob самоуничтожается после прочтения?
+157
struct Event
{
int priority;
bool operator<(Event e) const
{
return e.priority>priority;
}
virtual void operator() () = 0;
};
priority_queue<Event*, deque<Event*> > eventQueue;
template <typename T, void (T::*g)()>
struct TEvent : Event
{
T* parent;
virtual void operator() ()
{
(parent->*g)();
}
TEvent (T* _parent) : parent(_parent){}
};
struct Entity
{
int foo;
void AFunc()
{
cout<<foo;
}
void BFunc()
{
cout<<"Ololo";
}
typedef TEvent<Entity,&Entity::AFunc> someEvent;
Entity(int _foo): foo(_foo){}
void addEvent()
{
eventQueue.push(new someEvent(this));
}
};
int main()
{
Entity foo(10);
foo.addEvent();
(*eventQueue.top())();
return 0;
}
Один из самых сложных и неочевидных способов вывести в консоль число 10.
(Этот код - проверка, будет ли работать прототип велосипедного делегата)
+93
for i:=1 to 100 do
begin
for j:=1 to f do
begin
...
end;
f:=f+1000;
end;
Бедные дельфины, им не повезло с циклами.
+159
try
{
for(..)
{
for(..)
{
if(...)
throw;//генерация исключения
}
}
}
catch(..)
{
}
Кому-то религия не позволяет юзать goto. Сорри, если было.
+163
Engine::GetSingleton()->SetCallbacks(
new myname::Method<void(void),Application>(&Application::Render, boost::weak_ptr<Application>(application)),
new myname::Method<void(void),Application>(&Application::Update, boost::weak_ptr<Application>(application)),
0,
0,
new myname::Method<void(void),Application>(&Application::Init, boost::weak_ptr<Application>(application)),
new myname::Method<void(void),Application>(&Application::Cleanup, boost::weak_ptr<Application>(application))
);
Особая шаблонная магия + ООП мозга.