Вопросы по теме 'c++-concepts'
Что такое концепции?
Я слышал все это новое (в /.) О том, что C ++ 0x больше не имеет концепций, но я понятия не имею, что это такое? Кто-нибудь может мне объяснить?
1139 просмотров
schedule
21.11.2022
Будут ли доступны ограничения шаблона для шаблонов переменных?
В последнем документе об ограничениях шаблона представлен новый набор инструментов для ограничения аргументов шаблона. Также в C ++ предусмотрены 14 шаблонов переменных. Шаблоны переменных позволяют, среди прочего, определять константы с...
411 просмотров
schedule
11.07.2022
void_t может реализовать концепции?
Я смотрел вторую часть доклада CppCon2014 Уолтера Брауна о метапрограммировании шаблонов , во время которой он обсуждал использование его романа void_t<> конструкции. Во время презентации Питер Соммерлад задал ему вопрос, который я не совсем...
7450 просмотров
schedule
18.02.2023
Как они избегают проблем с концептуальной перегрузкой без явных моделей (они же концептуальные карты)
Как указано в ряде выступлений и статей Эндрю Саттона, предложение Concepts Lite действительно имеет функцию перегрузки на основе концепций и в то же время не имеет понятия карты концептов, то есть аргументы шаблона проверяются на соответствие...
132 просмотров
schedule
19.07.2022
Concepts-Lite в gcc (со ссылками на TS)
Как указано в недавнем ответе на этот вопрос , gcc теперь поддерживает concepts-lite в сборках из своего транка svn.
Тот же вопрос связан с последним TS, N4377 . Изменить – ответ имеет более новый TS.
Полезный документ можно найти с...
398 просмотров
schedule
27.12.2022
Допустимо ли для реализации стандартной библиотеки специализировать функцию, созданную по шаблону концепции, с дочерней концепцией?
С концепциями библиотек С++ 11 и С++ 14 допустимая реализация стандартной библиотеки С++ может создать специализированную версию функции, основанную на шаблоне концепции, чтобы воспользоваться дополнительными функциями дочерней концепции для...
166 просмотров
schedule
21.05.2023
средство проверки концепций не компилируется на gcc, потому что оно «не имеет связи»
Я создал класс проверки концепции на основе этого вопроса , цель которого заключается в том, чтобы убедиться, что данный класс имеет статическую функцию-член с именем baseUnitConversionFactor . Класс компилируется и отлично работает с msvc2013, но...
136 просмотров
schedule
02.08.2023
Почему в C++ Concepts TS есть концепции как переменных, так и функций?
Я просматривал C++1z N4377 Концепции TS черновик, который реализуется в GCC 6, и я не понимаю цели существования двух разных типов концепций: концепций переменных и концепций функций.
Соответствующая часть черновика для концепций функций...
204 просмотров
schedule
10.04.2022
Как использовать концепции с gcc 6
Я пытаюсь написать класс, который должен требовать концепции Container с gcc 6 .
Что я пробовал:
class MyContainer { ... };
static_assert(std::Container<MyContainer>);
Но я не могу заставить его скомпилировать.
530 просмотров
schedule
14.04.2023
Тип возвращаемого значения концепции функции (должен быть bool)
Эта страница http://en.cppreference.com/w/cpp/language/constraints указывает, что тип возвращаемого значения для концепции функции должен быть логическим. Если здесь есть только один вариант, то в чем причина требования указывать тип возвращаемого...
410 просмотров
schedule
20.01.2024
Почему размещение понятия в спецификаторе типа не приводит к выводу типа, когда одно и то же ограничение должно выводить разные типы?
У нас есть:
template <typename ...T> concept bool Numerics = ( std::is_arithmetic_v<T> && ... ) ;
template <typename T> concept bool Numeric = std::is_arithmetic_v<T>;
Затем мы позволяем компилятору...
98 просмотров
schedule
19.09.2022
Что-то вроде `decval` для понятий
Когда вы работаете с шаблонами и с decltype , вам часто нужен экземпляр определенного типа, даже если у вас его нет на данный момент. В этом случае std::declval<T>() невероятно полезен. Это создает воображаемый экземпляр типа T .
Есть...
224 просмотров
schedule
28.02.2023
Требования к новым итераторам
Я заметил, что большинству, если не всем контейнерам, теперь требуется, чтобы их тип ::iterator удовлетворял LegacySomethingIterator вместо SomethingIterator .
Например, std::vector<>::iterator теперь требует :
iterator...
5012 просмотров
schedule
14.02.2024
Отключить специализацию классов с помощью концепций
Я реализую свою собственную версию std::span , используя Concepts TS. Я застрял в реализации этих конструкторов :
template<class Container> constexpr span(Container& cont);
template<class Container> constexpr span(const...
213 просмотров
schedule
11.06.2023
Полиморфизм концепций в C++
Короткий вопрос: как заставить шаблонную функцию вести себя по-другому, основываясь на поддержке концепции параметров.
Я имею в виду, что если тип T реализует какую-то концепцию, то моя функция должна обрабатывать его специально, чем другие типы,...
205 просмотров
schedule
13.06.2023
шаблон-шаблон-параметр и концепции
Можно ли писать концепции для параметра шаблон-шаблон?
In
template<template<typename> typename T> struct A {};
Я хочу проверить, соответствует ли конкретный экземпляр T концепции.
Пример:
template<typename F>...
180 просмотров
schedule
07.03.2023
Как использовать объявление друга для класса шаблона с ограничениями
Для C ++ предназначены 20 концепций, и некоторые компиляторы уже предоставляют некоторые ранние реализации для этого. Мы столкнулись с некоторой проблемой с дружественными объявлениями шаблонного класса, где параметры имеют ограничения. После...
115 просмотров
schedule
27.05.2022
Переменная-член и проверка концепции функции
Я балую себя ранними воскресными махинациями на C ++ 20, и, играя с концепциями ствола gcc / clang, я наткнулся на проблему, для которой не нашел элегантного решения. Рассмотрим этот код:
template <typename T>
concept floating_point =...
88 просмотров
schedule
06.03.2023
Проверка Concept TS игнорирует модификатор закрытого доступа
Я хочу написать концепцию Indexable, означающую, что последовательность либо имеет начало/конец, которые возвращают RandomAccessIterator, либо оператор [] определен и возвращает значение непустого типа.
Я использовал идеи из статьи Страуструпа...
181 просмотров
schedule
07.02.2024
Концепция с несколькими аргументами шаблона
Я пытаюсь использовать концепции C ++ 20, чтобы начать с ними знакомиться. Я чувствую себя вполне комфортно с простыми концепциями, например, со стандартной концепцией movable я могу написать что-то вроде этого (во всех примерах я полагаю, что я...
222 просмотров
schedule
15.08.2022