- 1
- 2
- 3
- 4
- 5
- 6
- 7
for (_i = 1;_i <= int(strlen(Query10->FieldValue("pattern").c_str()));_i++) {
// ...
}
if (strlen(Query10->FieldValue("pattern_before").c_str()) == strlen(Query10->FieldValue("pattern_short").c_str())) {
// ...
}
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+11
for (_i = 1;_i <= int(strlen(Query10->FieldValue("pattern").c_str()));_i++) {
// ...
}
if (strlen(Query10->FieldValue("pattern_before").c_str()) == strlen(Query10->FieldValue("pattern_short").c_str())) {
// ...
}
Nuff said.
+12
template<typename T, typename T1>
class TSwitch
{
private:
std::function<T1(T)> _functionSwitch;
std::function<void(T)> _defaultFunction;
std::map<T1, std::function<void(T)> > _map;
private:
IActorPtr _protocol;
IActorPtr _port;
IActorPtr _listParam;
IActorPtr _managerData;
public:
TSwitch(std::function<T1(T)> functionSwitch,std::map<T1, std::function<void(T)> > mapSwitch):_functionSwitch(functionSwitch)
,_defaultFunction([](T value){std::cout<<"no way";})
,_map(mapSwitch){}
TSwitch(std::function<T1(T)> functionSwitch, std::function<void(T)> defaultValue,std::map<T1, std::function<void(T)> > mapSwitch):_functionSwitch(functionSwitch)
,_defaultFunction(defaultValue) ,_map(mapSwitch){}
virtual ~TSwitch(){}
public:
void switches(T value)
{
auto it=_map.find(_functionSwitch(value));
if (it==_map.end()) {_defaultFunction(value); return;}
it->second(value);
}
};
Вот такая замена switch. Отстойно не правда-ли?
+5
//Так я легко "девушку" найду
If(user.usingOS =="linux" && user.female=true){
user.Подкатить();
}
Решил выпендриться, и сам наговнокодил
+16
std::string response;
...
char* result = new char[response.size() + 1];
memcpy(&result[0], &response.c_str()[0], response.size());
result[response.size()] = 0;
return result;
Сам метод возвращает char * (при этом никто не запрещал использовать непосредственно std::string).
ЗЫ жаль что весь проект запостить нельзя. Он весь достоин.
+17
io_service::strand strand_one(service), strand_two(service);
for (int i = 0; i < 5; ++i)
service.post(strand_one.wrap(boost::bind(func, i)));
for (int i = 5; i < 10; ++i)
service.post(strand_two.wrap(boost::bind(func, i)));
Пример из книги Boost.Asio C++ Network Programming.
In the preceding code, we made sure that the first five and the last five were serialized namely, "func called, i = 0" is called before "func called, i = 1", which is called before "func called, i = 2", and so on. The same goes for "func called, i = 5", which is called before "func called, i = 6", and "func called, i = 6" is called before "func called, i = 7", and so on.
"А вот хуй тебе!", - сказал четырёхъядерный процессор, и выполнил коллбеки внутри strand'ов в случайном порядке.
+11
QString Factory::lifeEqual(WidgetEnum::SearchWidgetSet param) {
switch (param) {
case WidgetEnum::station:
return "Станция";
case WidgetEnum::water_area:
return "Акватория";
case WidgetEnum::station_coordinates:
return "Координаты станции";
case WidgetEnum::volume_of_filtered_water:
return "Объем отфильтрованной воды";
case WidgetEnum::chlorophyll_a_concentration:
return "Концентрация хлорофила а";
case WidgetEnum::chlorophyll_b_concentration:
return "Концентрация хлорофила b";
case WidgetEnum::chlorophyll_c_concentration:
return "Концентрация хлорофила c";
case WidgetEnum::A665k:
return "A(665k";
case WidgetEnum::pigment_index:
return "Индекс пигмента";
case WidgetEnum::pheopigments:
return "Феопигменты";
case WidgetEnum::upholding_sample_time:
return "Время выдержки образца";
case WidgetEnum::concetrated_sample_volume:
return "Объемная концентрация образца";
case WidgetEnum::cameras_viewed_number:
return "Качество камеры";
case WidgetEnum::total:
return "Общая численость";
case WidgetEnum::total_species:
return "Число видов в пробе";
case WidgetEnum::total_biomass:
return "Общая биомасса";
case WidgetEnum::total_percent:
return "Итоговый процент";
case WidgetEnum::biomass_percent:
return "Процент биомасс";
case WidgetEnum::percentage_of_total:
return "Процент от общего числа";
case WidgetEnum::percentage_of_the_total_biomass:
return "Процент от общего числа биомассы";
case WidgetEnum::number:
return "Номер";
case WidgetEnum::biomass:
return "Биомасса";
case WidgetEnum::total_species_in_group:
return "Всего видов в группе";
case WidgetEnum::name:
return "Название";
case WidgetEnum::name_alt:
return "Альтернативное название";
case WidgetEnum::name_rus:
return "Русское название";
case WidgetEnum::fishing_gear:
return "Рыболовный аппарат";
case WidgetEnum::assessment_of_zooplankton:
return "Оценка зоопланктона";
case WidgetEnum::date:
return "Дата";
case WidgetEnum::Station_water_area:
return "";
case WidgetEnum::groupsOfPh_name:
return "Название группы";
case WidgetEnum::groups:
return "Вид";
case WidgetEnum::error:
return "errorA";
case WidgetEnum::chlorinity:
return "chlorinity";
case WidgetEnum::density:
return "density";
case WidgetEnum::volume:
return "volume";
case WidgetEnum::o2_mg_l:
return "o2_mg_l";
case WidgetEnum::o2_ml_l:
return "o2_ml_l";
case WidgetEnum::bod5:
return "bod5";
case WidgetEnum::ph:
return "ph";
case WidgetEnum::alk:
return "alk";
case WidgetEnum::no2:
return "no2";
case WidgetEnum::no3:
return "no3";
case WidgetEnum::total_n:
return "total_n";
case WidgetEnum::po4:
return "po4";
case WidgetEnum::total_p:
return "total_p";
case WidgetEnum::si:
return "si";
And etc.....
В таком духе имеется строк 300, и если бы выход здравого смысла из спячки и наличие базы данных, 50 строчек которыми все это стало, с течением времени могло бы превратиться в 1000 строк, если не больше.
И хоть это банальный гавногод, жалко трудов и времени на него затраченных. А так хоть канет в бездне говногода, а не в бездне моего винта.
+17
MagicClass::getInstance().getFooFactory().createFoo().killMePlease();
http://habrahabr.ru/post/222007/
А вообще "Внедрение зависимостей в C++ через контейнеры" - та ещё традиционная специальная олимпиада крестовиков.
+11
int FCEUI_SetCheat(....)
{
...
if((t=(char *)realloc(next->name,strlen(name+1))))
...
}
А пасиму оно на 2 байта меньше выделяет, насяльника?
http://www.viva64.com/ru/examples/V518/
+15
int main() {
//new int;
FreeConsole();
+12
// Decompress section data
if (ERR_SUCCESS != LzmaDecompress(data, dataSize, decompressed)) {
// Intel modified LZMA workaround
EFI_COMMON_SECTION_HEADER* shittySectionHeader;
UINT32 shittySectionSize;
// Shitty compressed section with a section header between COMPRESSED_SECTION_HEADER and LZMA_HEADER
// We must determine section header size by checking it's type before we can unpack that non-standard compressed section
shittySectionHeader = (EFI_COMMON_SECTION_HEADER*) data;
shittySectionSize = sizeOfSectionHeaderOfType(shittySectionHeader->Type);
// ...
Oh shit!