Вопросы по теме 'c++14'

C ++ 14 поддерживающий редактор / IDE
Я ищу мощную среду программирования для C / C ++. Фактически, единственное, что мне нужно, это мощный инструмент для навигации и создания источников. Неважно, бесплатное оно или коммерческое. Я предпочитаю какой-нибудь инструмент для Linux, но он...
4661 просмотров
schedule 02.12.2022

Сетевая библиотека в C++14
Херб Саттер пишет здесь (о своей Отчет о поездке на встречу ISO C++ Spring 2013), что в C++14 планируется добавить сетевую библиотеку. Какие функции должна была иметь эта библиотека изначально? На чем он основан? Есть ли реализация...
7560 просмотров
schedule 04.09.2022

Зачем инициализировать unique_ptr вызовом make_unique?
Взято с: http://herbsutter.com/2013/05/22/gotw-5-solution-overriding-virtual-functions/ Почему мы должны писать: auto pb = unique_ptr<base>{ make_unique<derived>() }; Вместо просто: auto pb =...
3888 просмотров
schedule 18.05.2022

В каком контексте будут выполняться возобновляемые функции в C++14?
Одним из предложений для C++14 является Resumable Functions . что дает C++ то, что доступно сегодня в C# с механизмами async/await. Основная идея заключается в том, что функцию можно приостановить, ожидая завершения асинхронной операции. Когда...
1402 просмотров
schedule 14.05.2023

Эквивалент использования псевдонимов для шаблонов
C++11 добавил шаблоны псевдонимов, такие как: template<typename T> using identity = T; template<bool b, typename T = void> using EnableIf = typename std::enable_if<b, T>::type; Их гораздо проще использовать, чем старые...
445 просмотров
schedule 23.06.2023

SFINAE и decltype(авто)
Если шаблон функции возвращает decltype(auto) (или другой спецификатор типа, использующий auto ), но оператор return будет некорректным, получится ли результат SFINAE? Считается ли оператор return непосредственным контекстом сигнатуры функции?...
1199 просмотров
schedule 22.03.2023

Функторы прозрачных операторов
Visual Studio 2013 Preview поддерживает функцию C++14, которая называется (согласно this page) "Функторы прозрачных операторов". Я не понимаю, что это значит. Ближайшее предложение C++14, которое я нашел, это это, но я не уверен, что это одно и то...
5055 просмотров
schedule 20.05.2022

Будут ли доступны ограничения шаблона для шаблонов переменных?
В последнем документе об ограничениях шаблона представлен новый набор инструментов для ограничения аргументов шаблона. Также в C ++ предусмотрены 14 шаблонов переменных. Шаблоны переменных позволяют, среди прочего, определять константы с...
411 просмотров
schedule 11.07.2022

Понимание примера возобновляемых функций в предложении N3650 для C++1y
Рассмотрим следующий пример, взятый из N3650 : int cnt = 0; do { cnt = await streamR.read(512, buf); if (cnt == 0) break; cnt = await streamW.write(cnt, buf); } while (cnt > 0); Я, наверное, что-то упускаю, но если я хорошо...
2126 просмотров
schedule 05.06.2024

Существуют ли какие-либо препятствия в языке C ++, которые не позволяют использовать диапазоны D?
Это перекрестный вопрос C ++ / D. В языке программирования D есть диапазоны , которые - в отличие от библиотек C ++, таких как Boost.Range - не основаны на парах итераторов. Официальная группа изучения диапазонов C ++ , похоже, увязла в...
1359 просмотров
schedule 09.06.2022

Вектор typedefs
Возможно ли ЛЮБЫМ способом иметь вектор типа (def) в C++11/14 ? Первое, что я попробовал, это иметь вектор базового класса и каким-то образом получить typedef из его производной формы, но я не могу заставить это работать, что бы я ни пытался...
1638 просмотров
schedule 30.11.2022

Контейнер с прокси-итератором/ссылкой и авто
Я реализую контейнер с прокси-итератором/ссылочным типом, похожим на std::vector<bool> , и сталкиваюсь со следующей проблемой, которую я продолжаю иллюстрировать с помощью std::vector<bool> (этот вопрос не о std::vector<bool>...
2932 просмотров

Передача некопируемого объекта закрытия в параметр std::function
В C++14 лямбда-выражение может захватывать переменные, перемещаясь от них с помощью инициализаторов захвата. Однако это делает результирующий объект замыкания некопируемым. Если у меня есть существующая функция, которая принимает аргумент...
5408 просмотров
schedule 24.06.2022

Захват по универсальной ссылке
При передаче выведенного типа в качестве ссылки на r-значение я получаю универсальную справочную функциональность и могу архивировать идеальную пересылку следующим образом: template <typename T> void func(T&& t) {...
2268 просмотров
schedule 11.05.2024

Разрешается ли реализациям добавлять общедоступные члены к стандартным типам?
Разрешено ли реализациям стандартной библиотеки С++ добавлять общедоступные (и защищенные) элементы в интерфейсы стандартных типов? N3797 17.6.5.5 [member.functions]/2 говорит: Реализация может объявлять дополнительные не виртуальные сигнатуры...
496 просмотров
schedule 25.02.2023

Почему оператор * для unique_ptr не является исключением?
В C++11 и черновике C++14 операторы разыменования ( operator* и operator-> ) для shared_ptr оба являются noexcept . Но для unique_ptr operator-> это noexcept , а operator* нет. Почему operator* не вместо unique_ptr noexcept...
128 просмотров
schedule 16.04.2022

C++11: Как написать функцию-оболочку для создания объектов `std::function`
Я пытаюсь написать оболочку make_function , которая, как и std::make_pair , может создать объект std::function из подходящих вызываемых объектов. Как и make_pair , для указателя функции foo auto f0 = make_function(foo); создает...
4175 просмотров
schedule 05.08.2023

Правильно ли определены не завершающие функции constexpr?
Рассмотрим следующий код: constexpr unsigned f(unsigned x) { while (x & 1) x *= 3; return x; } int main() { char a[f(2)]; char b[f(1)]; } Если это не очевидно: для нечетных целых чисел x функция f никогда не...
217 просмотров

Почему make_unique не работает с unique_ptr::reset?
Я попытался скомпилировать некоторый код C++ с помощью VS2013, и unique_ptr::reset() , похоже, не работает с make_unique() ; небольшой компилируемый фрагмент кода репродукции: #include <memory> using namespace std; int main() {...
7671 просмотров
schedule 05.12.2022

Функция размерного освобождения памяти в управлении памятью в C++1y
Было предложено включить функцию Sized Deallocation в C++1y. Однако я хотел понять, как это повлияет/улучшит текущее управление памятью низкого уровня c++? Это предложение находится в N3778 , в котором говорится о намерении этого....
2454 просмотров