Information
- Rating
- Does not participate
- Location
- Москва и Московская обл., Россия
- Date of birth
- Registered
- Activity
Specialization
Software Architect
PostgreSQL
C#
C++
Linux
Docker
Kubernetes
High-loaded systems
Designing application architecture
Database design
Можно будет писать так:
Вы сравниваете «специализацию» с наследованием, и в «хорошем решении» с перегрузкой функций. Дело не в том, как должно быть «хорошо», а в том, что вы сравниваете разные вещи.
Подобные утверждения требуют какого-то подтверждения. Можете привести пример?
Это неправда. Для вашего примера, решенного в лоб:
компилятор с вектороной оптимизацией (напр. g++ -O3) сгенерирует следующий код для цикла:
Но соглашусь, статья является не полной без описания явных и неявных приведений типов в конструкторах и вызовах функций, из чего и следует данный вариант приведения.
Покупка PVS-Studio лично для себя практически нереальна. И даже CppCat все равно слишком дорог.
Как это выглядит для корпоративного пользователя:
Зачем покупать CppCat — заведомо ущербный аналог PVS-Studio. Даже если на самом деле это не так, разница в цене создает реальное психологическое давление.
Именно поэтому unique_ptr и не является хорошим инструментом для реализации scope_guard.
Тут у нас есть несколько решений — потребовать условия noexcept(CloseHandle(*h)), просто проигнорировать исключение посредством try-catch, или передать это исключение для дальнейшей обработки:
Что, впрочем, не является лучшей идеей, учитывая, что deleter будет вызван в деструкторе unique_ptr.