global static != local static
От: mbait  
Дата: 28.04.18 10:29
Оценка: 3 (1) -2
TLDR; static (const) переменные в global scope работяют как в Си, в local scope создаётся туча кода с мьтексами, блокировками и бросанием исключений.

Снова и снова я возвращаюсь к С++ с мыслями "ну, может не такой он и стрёмный? в конце-концов RAII, можно красиво писать" и каждый раз какое-то говно находится. В этот раз — https://manishearth.github.io/blog/2015/06/26/adventures-in-systems-programming-c-plus-plus-local-statics/. А что там было насчёт "не плати за то, что не используешь?", а что насчёт move semantics и precondition? Почему тут нельзя было так же сделать: объявил локально статичную переменную — будь добр не вызывать эту функцию абы как?
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.