![[personal profile]](https://www.dreamwidth.org/img/silk/identity/user.png)
Стандарт языка C++17 уже два года как полностью поддерживается компиляторами g++ и clang. Нет никаких причин не переходить на него, кроме интеллектуальной лени.
В язык были добавлены многие вещи разной степени полезности. Вот эти мне приглянулись больше всего.
В язык были добавлены многие вещи разной степени полезности. Вот эти мне приглянулись больше всего.
- If и switch с инициализацией
- Статические переменные inline
- Вложенные namespace
- Фиксированный порядок вычисления выражений
- std::optional<>
no subject
Date: 2020-01-04 06:49 (UTC)Что там в пункте 2?
no subject
Date: 2020-01-04 21:01 (UTC)Inline-префикс для статических переменных даёт возможность объявлять и инициализировать их в одном месте: в include-файле. Раньше приходилось объявлять в foo.h а инициализировать в foo.cpp.
no subject
Date: 2020-01-04 21:14 (UTC)Компилятор требовал более новой системы на железке, а её никто не сделал. Ну и просто от греха.
no subject
Date: 2020-01-04 11:10 (UTC)Но честно говоря, я C++ перестал пытаться уложить в голову начиная со стандарта C++11, что ли. Там каждая вторая фича с сайдэффектами.
no subject
Date: 2020-01-04 21:13 (UTC)Си такой язык, что в нём каждая фича с сайдэффектами. Начиная с операции сдвига влево, где отрицательное число может неожиданно поменять знак. С++ значительно ухудшил ситуацию. Но тут помогают внешние тулы, те же CLion и SonarCloud.
no subject
Date: 2020-01-04 19:28 (UTC)no subject
Date: 2020-01-04 21:15 (UTC)no subject
Date: 2020-01-04 21:54 (UTC)no subject
Date: 2020-01-08 16:32 (UTC)