http://stackoverflow.com/questions/86708...
Вот почему в няшном хачкеле со всеми его RankN Polymorphisms и Undecidable instances все просто, а в плюсах — снова отсос?
*C++
http://habrahabr.ru/post/166113/ — вообще годная статейка. Мне понравилась. Интересные особенности кодостиля. Я бы юзал.
А gcc уже умеет инлайнить вызовы виртуальных функций в final-классах? Ну или хотя бы избавляться от vtbl.
А еще, похоже, мне пора начать обмазываться даташитами на процессоры и все такое.
По крайней мере, похоже, для вещи типа
char ch = ...
if ((ch >= 'a' && ch <= 'z') || (ch >= 'A' && ch <= 'Z'))
something = true;
gcc генерит жутко неоптимальный код из кучи cmp/jz, которые сбивают нахер бранч предиктор.
В результате ... more →
std::find отсасывает у strchr с проглотом (4.8 секунды против 0.79). Хотя, казалось бы, инлайн, оптимизации компилятора и все такое.
Я уже, конечно, ныл об этом, но плюсцы снова соснули, в частности, с невозомжностью вывода типа T в какой-нибудь такой функции:
template<typename T>
Phonon::MediaSource GetRandomBy (QList<Phonon::MediaSource>::const_iterator, std::function<T (MediaInfo)>);
по такому вызову:
GetRandomBy (sources, [] (MediaInfo t) ... more →
господа бустоёбы, а вы сравнивали производительность бустового read-write lock (или shared lock, или как он там) c pthread_rwlock_t?
Поднял на сервере жабберцы, транспорт заменил на spectrum2, который не хотел работать с postgresql. Связался с разработчиками, обсудили проблему, пофиксили в этот же день в режиме реального времени (правда пришлось немного ПОКОМПИЛЯТЬ ибо на плюсах). Вот бы все комьюнити были такими же активными.
Применяют ли современные компиляторы copy elision для функции типа
foo (T t)
{
vec [somePos] = t;
}
?
Имеет ли смысл здесь писать const T& вместо T, иными словами?
программирование с активным использованием auto напоминает программирование на языках с динамической типизацией. хуяришь себе утиную типизацию от шаблонных параметров, производишь преобразования над переданными объектами, утиная типизация во все поля, а потом оказывается, что тип, который компилятор вывел в итоге ... more →
Система типов в плюсах соснула настолько, что невозможно запилить unordered_set, где у элементов есть неизменяемая часть, от которой и считается хеш, а остальная часть вполне себе может быть mutable.
вот какого хуя нельзя было сделать функцию std::make_lock_quard(Mutex& m) по аналогии с std::make_pair?
а схуяли это конструктор std::mutex объявлен как
constexpr mutex() noexcept;
где это они возьмут такой мьютекс, чтобы никогда зафейлить инициализацию не мог?
мы когда-нибудь за это все в адском пламене сгорим: https://gist.github.com/4509088#file-get... http_request-cpp-L2-L5
Уже два часа открываю файл с рабочим проектом, думаю, как легко было бы реализовать алгоритм на функциональщине, а не на мерзких плюсцах с еблей и говном, закрываю файл и прокрастинирую.
Тут тоже надо найти куда нажать, чтобы починить.
Написание auto foo = ... вместо const auto& foo = ... может привести к деградации производительности в 30 раз.
Обожаю этот язык.
Знаете в чём прелесть C? В отсутствии side-эффектов у return. Реально, случился
какой-то ниебический пиздец, после которого уже нельзя жить, но всё равно можно
сделать return и знать, что вызывающая программа получит то значение, которое
ты ей вернул. И даже рядом с этим return можно cleanup ресурсов сделать. И ... more →
слышь, прикинь какой у меня зашквар, я оказывается синглтоны в ubermock использовал: https://docs.google.com/open?id=0B6ttfyN...
Всё, больше поддерживать его не буду, пущай подыхает в неведеньи
Благодаря #tioego прикрутил деманглинг неизвестных имен в неуспешно загруженной библиотеке, что одна из самых распространенных ошибок при погромировании под личкрафты:
[08.01.2013 05:10:13.279] [0x1d1eaf0] [008] Could not load library /usr/local/lib64/leechcraft/plugins/libleechcraft_gmailnotifier.so; Cannot load ... more →
поскольку rapidxml предоставляет доступ к элементам через char*, а долбиться в strlen/strcmp задолбало, нарисовал оберточный класс, збс. теперь даже итераторы есть!
*C++ is used by:
0xd34df00d
0xd34df00d
Пахом
Pahom
Hirthwork McGillah
hirthwork
analizer
analizer
профессиональный говноед
ulidtko
werehuman
werehuman
0x2207
0x2207
няша
generatorglukoff
4DA
4da
Mагог Магогович
magog
dorfe
dorfe
Оранжевус Охуеннус
utros
gelraen
gelraen
Darth Bricktop
Like-all
kb
kb
jabber
jabber
16+
238328
Cthulhu
Cthulhu
failman
failman
Джордж Ричмонд
richmond
Crazy_Owl
Crazy_Owl
beardog
beardog
Лисий хвост
madInsane
SirAnthony
SirAnthony
amd63
amd63
Monah Tuk
hatred
Nico-izo
Nico-izo
nobiiru
nobiiru
K900
K900
anonymous_owl
anonymous_owl
Артём
astecenko
asmer
asmer
Minoru
Minoru
chemikadze
chemikadze
18+ Запрещено для детей.
hedgehog
Andrew Motrenko
werdn
Артс
arts
Anatoly Kalin
m4n71k0r
Дэш
dash
folex
folex
Maxim Kirenenko
part1zano
Ky6uk
Ky6uk
Michael Pogoda
MPogoda
taras
taras
Илья Силаков-Волынский
iLeamare
nstm0
nstm0
Хотеть!
xotetb
Haomand
Haomand
RainerGomes
RainerGomes
lexszero
lexszero
proton
proton
Rejjin
Rejjin
eurekafag
eurekafag
Spiritual ecstasy
rapture
Enoh
Enoh
rogaboru
rogaboru
Thordendal
z56371410
mva
mva
Fess
zetoke
anoos
anoos
DOMr
DOMr
Bender Bending Rodríguez
DJm00n
Смерть Неизбежна
lHooFool
nexeuse
nexeuse
0xd34df00d
Pahom
hirthwork
analizer
ulidtko
werehuman
0x2207
generatorglukoff
4da
magog
dorfe
utros
gelraen
Like-all
kb
jabber
238328
Cthulhu
failman
richmond
Crazy_Owl
beardog
madInsane
SirAnthony
amd63
hatred
Nico-izo
nobiiru
K900
anonymous_owl
astecenko
asmer
Minoru
chemikadze
hedgehog
werdn
arts
m4n71k0r
dash
folex
part1zano
Ky6uk
MPogoda
taras
iLeamare
nstm0
xotetb
Haomand
RainerGomes
lexszero
proton
Rejjin
eurekafag
rapture
Enoh
rogaboru
z56371410
mva
zetoke
anoos
DOMr
DJm00n
lHooFool
nexeuse