Size: a a a

2020 May 04

A

Alex in pro.cxx
Лично меня больше всего раздражает не это, а необходимость писать this->. Как будто не видно, что я обращаюсь к non-static мемберу класса.
источник

ПК

Побитый Кирпич... in pro.cxx
Alex
Лично меня больше всего раздражает не это, а необходимость писать this->. Как будто не видно, что я обращаюсь к non-static мемберу класса.
Это как раз понятно, иначе на каждый идентификатор компилятору пришлось бы лезть в базовые классы
источник

A

Alex in pro.cxx
так пусть лезет, почему это моя проблема должна быть?
источник

ПК

Побитый Кирпич... in pro.cxx
Alex
так пусть лезет, почему это моя проблема должна быть?
Твоя проблема - замедление компиляции
источник

A

Alex in pro.cxx
это не проблема, а вот корявый исходный код и тупые ошибки компиляции на ровном месте - действительно проблема
источник

ПК

Побитый Кирпич... in pro.cxx
Alex
это не проблема, а вот корявый исходный код и тупые ошибки компиляции на ровном месте - действительно проблема
Ну тут как бы ты не платишь за то что не используешь, код, не обращающийся к мемберу будет за это платить, если переложить это на компилятор
источник

A

Alex in pro.cxx
С++ и так настолько долго компилится, что ещё 1 мс можно и заплатить за удобство.

Помню, когда мой рабочий проект впервые портировали на Андроид и начали активно там пилить, году в 2012-2013, компилятор был GCC 4.8 или 4.9, и я нарадоваться не мог, насколько быстрее андроидный проект компилился по сравнению с десктопным на той же машине и почти с тем же кодом в MSVC (2010 или 2012 тогда). Но с годами GCC всё замедлялся и замедлялся, сокращая разрыв, а когда Андроид NDK перевели на clang, стало одинаково). Вероятно, и с GCC 7 тоже уже было одинаково.
источник

Г

Генерал in pro.cxx
Alex
С++ и так настолько долго компилится, что ещё 1 мс можно и заплатить за удобство.

Помню, когда мой рабочий проект впервые портировали на Андроид и начали активно там пилить, году в 2012-2013, компилятор был GCC 4.8 или 4.9, и я нарадоваться не мог, насколько быстрее андроидный проект компилился по сравнению с десктопным на той же машине и почти с тем же кодом в MSVC (2010 или 2012 тогда). Но с годами GCC всё замедлялся и замедлялся, сокращая разрыв, а когда Андроид NDK перевели на clang, стало одинаково). Вероятно, и с GCC 7 тоже уже было одинаково.
То есть сейчас лучше использовать clang вместо gcc?
источник

A

Alex in pro.cxx
сейчас пофиг, все три примерно одинаково медленные на моём коде
источник

A

Alex in pro.cxx
а вот GCC 4 был намного шустрее, чем тогдашний msvc
источник

OS

Oleksandr Senkovych in pro.cxx
А еще GCC 4 компилировал всякий нестандартный шлак, в итоге апгрейд компилятора сопровождался изменениями кодовой базы
источник

CD

Constantine Drozdov in pro.cxx
Alex
Лично меня больше всего раздражает не это, а необходимость писать this->. Как будто не видно, что я обращаюсь к non-static мемберу класса.
мемберу или тайпнейму или функции?
источник

A

Alex in pro.cxx
Oleksandr Senkovych
А еще GCC 4 компилировал всякий нестандартный шлак, в итоге апгрейд компилятора сопровождался изменениями кодовой базы
вроде, флаг -pedantic-errors это лечил. Ну и не указывать -fpermissive, конечно.
источник

A

Alex in pro.cxx
Constantine Drozdov
мемберу или тайпнейму или функции?
Пусть компилятор разбирается и подставляет, из контекста понятно, что там на самом деле.
источник

CD

Constantine Drozdov in pro.cxx
Alex
Пусть компилятор разбирается и подставляет, из контекста понятно, что там на самом деле.
int (x);
разберите значение оператора в случаях, если
P.S. кажется, я ошибся с примером, но такие конструкции точно существуют
источник

M

Mr_ChAI in pro.cxx
Зачем std::list принимает в шаблон класс аллокатора для типа T? Он же ноды должен аллокатить
источник

M

Mr_ChAI in pro.cxx
Т.е. std::list<int, std::allocator<int>> вместо какого-нибудь std::list<int, std::allocator<__list_node<int>>>
источник

M

Mr_ChAI in pro.cxx
Я чет копался в кланге и гсс, ничего не понял, но вектора там вроде не было
источник

CD

Constantine Drozdov in pro.cxx
????
источник

A

Alex in pro.cxx
Mr_ChAI
Зачем std::list принимает в шаблон класс аллокатора для типа T? Он же ноды должен аллокатить
это именно то, что меня убивает в API аллокаторов и рубит на корню мои идеи по их применению
источник