- 1
case UP : o > 0 ? o-- : o = FIELD_SIZE - 1; break;
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+911
case UP : o > 0 ? o-- : o = FIELD_SIZE - 1; break;
Друг скинул в аську, попросил перевести в if-ную форму)))
Не знаю где он это откопал)))
+911
TVector4 V0;
TVector4 V1;
TVector4 V2;
//....
//Пример компилирующегося допустимого использования:
(V0+V1)=V2;
Нашёл я тут мега библиотеку в инете для работы с векторами. За такое нужно бить по рукам.
+908
for (int i = ((x-1)>=0)?(x-1):0; i<=((x+1<=9)?(x+1):9); ++i)
for (int j = ((y-1)>=0)?(y-1):0; j<=((y+d<=9)?(y+d):9); ++j)
if (isplayer)
{
if (Board[i][j]->Alive)
return false;
}
else
{
if (EnBoard[i][j]->Alive)
return false;
}
с++ такой с++
+908
template <typename Handler>
void start_connect_op(socket_type descriptor,
per_descriptor_data&, Handler handler)
{
boost::asio::detail::mutex::scoped_lock lock(mutex_);
if (!shutdown_)
{
boost::shared_ptr<bool> completed(new bool(false));
connect_handler_wrapper<Handler> wrapped_handler(
descriptor, completed, *this, handler);
bool interrupt = write_op_queue_.enqueue_operation(
descriptor, wrapped_handler);
interrupt = except_op_queue_.enqueue_operation(
descriptor, wrapped_handler) || interrupt;
if (interrupt)
interrupter_.interrupt();
}
}
Как дико зафрагментировать кучу?!
Столько хороших идей и так много говнокода в реализации.
//boost::shared_ptr<bool> completed(new bool(false)); - это один из шедевров кривокодирования!!!
+906
class LoaderLock
{
public:
void lock();
void unlock();
bool IsLocked() const;
LoaderLock() = default;
private:
LoaderLock(LoaderLock&) = delete;
LoaderLock(LoaderLock&&) = delete;
LoaderLock& operator=(LoaderLock&) = delete;
LoaderLock& operator=(LoaderLock&&) = delete;
bool _Locked = false;
ULONG _cookie = 0;
std::unique_ptr<void, std::function<void(void*)>> _ntdll{ LoadLibrary("NTDLL.DLL"), [](void* h){if (h)FreeLibrary((HMODULE)h); } };
typedef NTSTATUS(__stdcall*LdrLockLoaderLockFunc)(
ULONG Flags,
ULONG *State,
ULONG *Cookie);
LdrLockLoaderLockFunc _LdrLockLoaderLock = !_ntdll ? 0 : (LdrLockLoaderLockFunc)GetProcAddress((HMODULE)_ntdll.get(), "LdrLockLoaderLock");
typedef NTSTATUS(__stdcall*LdrUnlockLoaderLockFunc)(
ULONG Flags,
ULONG Cookie);
LdrUnlockLoaderLockFunc _LdrUnlockLoaderLock = !_ntdll ? 0 : (LdrUnlockLoaderLockFunc)GetProcAddress((HMODULE)_ntdll.get(), "LdrUnlockLoaderLock");
};
Уже давно минул 2014 год, а C++11 не перестает радовать нас размазанными по интерфейсу конструкторами и деструкторами.
+905.2
if ( tmp - res == 11 )
{
tmp = tmp;
}
Нашел в проэкте сегодня. Кто отгадает, зачем этот код был нужен - тому ничего не будет.
+901
char * b = new char[100];
int Length = 0;
while ( a[++Length] );
for ( int i = 0; i<= 10; i++ )
{
b[i] = a[i];
}
for ( int i = 0; i<= Length; i++ )
{
move ( y, x+i );
printw ( "%c", b[i] );
}
delete b;
return;
вывод строки в ncurses.
доставляет школота?
+899.2
char *z="group=";
char *x="end group\n";
char *text=new char[sizeof(z)+sizeof(x)+sizeof(groupName)+1];
strcat(text, z);
strcat(text, groupName);
strcat(text, "\n");
strcat(text, x);
Нашел в исходниках одного менеджера паролей. Вот как надо формировать строки.
+890.7
#define private public
+890
Int64 iObjectId;
public Int64 ObjectId
{
get { return iObjectId; }
set {
if (iObjectId == null) { value = 0; } else value = iObjectId;
}
}
Помимо того, что условие (iObjectId == null) никогда не выполняется, сеттер еще и делает свойство ObjectId фактически readonly.
(Авторское форматирование кода сохранено.)