The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



Вариант для распечатки  
Пред. тема | След. тема 
Форум Разговоры, обсуждение новостей
Режим отображения отдельной подветви беседы [ Отслеживать ]

Оглавление

Утверждён стандарт C++20, opennews (?), 07-Сен-20, (0) [смотреть все] +1

Сообщения [Сортировка по времени | RSS]


187. "Утверждён стандарт C++20"  +/
Сообщение от SR_team (ok), 07-Сен-20, 19:53 
> выкинули volatile

так и не успел понять зачем он был нужен

Ответить | Правка | Наверх | Cообщить модератору

237. "Утверждён стандарт C++20"  +/
Сообщение от draw1 (?), 08-Сен-20, 03:14 
Например, чтоб "бить по рукам" оптимизатор в хитрых низкоуровневых моментах. Иногда надо чтоб код делал ровно то что написано. Буквально. Без сюрпризов и самодеятельности (а в ассемблер уходить лень ради какой-то мелочи, да и переносимость хочется).
Может для аналогичного теперь есть какая-нибудь очередная новая синтаксическая конструкция...
Ответить | Правка | Наверх | Cообщить модератору

263. "Утверждён стандарт C++20"  –2 +/
Сообщение от Webmonkey (?), 08-Сен-20, 11:18 
>"бить по рукам" оптимизатор в хитрых низкоуровневых моментах

UB-driven development?

Ответить | Правка | Наверх | Cообщить модератору

246. "Утверждён стандарт C++20"  +1 +/
Сообщение от Eddy_Em (?), 08-Сен-20, 07:37 
Для разного рода embedded'щины.
Ответить | Правка | К родителю #187 | Наверх | Cообщить модератору

347. "Утверждён стандарт C++20"  +/
Сообщение от Аноним (347), 10-Сен-20, 03:49 
Ну вот есть у нас простенький микроконтроллер, на нем куча разных прерываний вылезает, во всех переменные могут поменяться, а без volatile - компилятор, который вообще не знает про прерывания, так соптимизирует что из переменной будет читаться одно и тоже.
Ответить | Правка | К родителю #187 | Наверх | Cообщить модератору

351. "Утверждён стандарт C++20"  +/
Сообщение от Аноним (351), 10-Сен-20, 06:25 
Для того чтобы сказать компилятору что это область памяти (переменная) особенная и может измениться в любой момент и она тебе (компилятору) не подконтрольна, так что не нужно производить над ней оптимизации. Так же, компилятор, на некоторых платформах, вставляет instruction fans (компилятор - не перемешивай порядок операций над этой областью) и cpu fans (процессор - выполняй инструкции в том порядке в котором они написаны, а не перемешивай в угоду производительности ибо есть side эффекты). Применяется когда ты работаешь с регистрами CPU, внешними устройствами, многопоточность (google: Scott Meyers Singleton, как самая известная мне иллюстрация проблемы) и другой "особенной" памятью.
Ответить | Правка | К родителю #187 | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру