ideas
ideas copied to clipboard
Идеи по улучшению языка C++ для обсуждения
Компилятор C++ позволяет объявить имя типа без его полного описания (т.н. предварительное объявление). В дальнейшем это имя можно использовать в виде ссылки или указателя на тип. Если же переменная или...
_Перенос предложения:_ голоса +10, -2 _Автор идеи:_ ?? В С++ добавляется столько много вещей, это приятно. Но в другой сторону, это печально, что С++ нет стаднтрный инструмент для работы с...
В стандарте есть функции для работы с кучей. is_heap, make_heap, push_heap, pop_heap и другие. Не достает std::shift_down которая будет просеивать модифицированный максимальный/минимальный элемент. Например библиотеки событий используют кучу для хранения...
_Перенос предложения:_ голоса +18, -3 _Автор идеи:_ **khnormuradov** Не комплируется конкатенация string_view и std::string: string_view{} + string{} --> ERROR ```cpp #include #include int main() { std::string s = "hello ";...
В С++20 наконец-то стало возможным конвертировать время между часами, но не появилось специализации для конвентирования системных часов в монотонные и обратно. На сколько я помню, для них гарантируется что они...
В некоторых шаблонных функциях мы для полноты картины можем написать в `noexcept(...)` содержимое самой функции по сути. Это вызывает бессмысленное дублирование кода. При этом компилятор, по спецификациям `noexcept` вызываемых из...
На текущий момент есть места, где чисто-языковые возможности зависят от типов, объявленных в заголовках стандартной библиотеки. Следующие примеры являются невалидным C++: ```cpp auto x = {0, 42}; using initializer_list =...
_Перенос предложения:_ голоса +13, -0 _Автор идеи:_ **damir3** Нужна стандартная математическая библиотека для работы с векторами, матрицами и кватернионами. Очень не хватает стандартной математической библиотеки для работы с векторами, матрицами...
# Распаковка структур данных прямо в аргументах функции Иногда очень хочется делать structure matching в аргументах функции. В C++ есть передача аргументов по значению. Т.е. конструктор копирования выполняется до кода...
# Описание В Java существуют [jsr 305](https://jcp.org/en/jsr/detail?id=305) и [jsr 308](https://jcp.org/en/jsr/detail?id=308), которые стандартизировали поддержку указания программистом в каких местах возможно, а в каких невозможны `null` значения. Компания JetBrains пошла немного дальше...