Вопросы по теме 'enable-if'
Использование enable_if для необязательного добавления члена структуры
Учитывая этот шаблон:
template <class A>
struct Something {
... // members common to all template instantiations for all A types
SpecialType member; // but not this - I want this to be conditional...
}
... Я хочу использовать...
2166 просмотров
schedule
11.01.2023
Метод шаблона enable_if специализация
у меня есть следующий код, который не компилируется. Это две функции в шаблонном классе, которые принимают аргументы
typename std::enable_if<std::is_void<Ret>::value, Ret>::type _on_dispatched() {
// ...
}
typename...
1991 просмотров
schedule
02.07.2023
enable_if разрешает только базовый класс
В настоящее время я реализую некоторый CRTP с базовым классом template<class CRTP> Base и производными классами Derived1 : public Base<Derived1> , Derived2 : public Base<Derived2> ...
Математические операторы определены в...
1359 просмотров
schedule
22.04.2022
std::enable_if второй запрос
Я новичок в std::enable_if и мне интересно, как его использовать. У меня есть класс шаблона:
template<int a, int b>
class foo {
int c;
}
Я хочу, чтобы в шаблоне был только элемент c, когда
a = 5.
Как мне это сделать с...
198 просмотров
schedule
24.07.2022
Почему этот класс признаков не работает, чтобы проверить, имеет ли класс определенный typedef?
редактировать:
Хорошо, я понял это. Я использовал false_type и true_type в качестве аргумента для enable_if , хотя должен был просто использовать bool . :Икс
Кроме того, я решил, что класс is_map_like будет лучше проверять, похож ли...
69 просмотров
schedule
07.09.2022
Какое правильное ограничение enable_if для идеального установщика переадресации?
Назад к основам! Презентация Essentials of Modern C++ на CppCon обсудила различные варианты передачи параметров и сравнила их производительность с простотой написания/обучения. «Расширенный» вариант (обеспечивающий наилучшую производительность во...
1544 просмотров
schedule
21.11.2022
включить оператор преобразования с помощью SFINAE
Я пытаюсь перегрузить operator T() , используя SFINAE, чтобы вернуть копию, когда T является фундаментальным типом, и константную ссылку, когда T является классом.
При использовании double в моем примере ниже я не могу удалить вторую...
2060 просмотров
schedule
28.05.2023
Разблокировать JButton, поскольку в полях есть текст
Как следует из темы, я хочу разблокировать (setEnabled (true)) мою регистрацию JButton, когда в других полях есть какой-либо текст, но я не знаю, что это за слушатель. Я загружаю изображение для более четкого понимания....
236 просмотров
schedule
19.03.2023
Ошибка компиляции при использовании enable_if для SFINAE
Я пытаюсь выполнить упражнение с использованием SFINAE, но получаю непонятную ошибку компиляции.
У меня такой код:
#include <cstddef> // for size_t & NULL
#include <memory>
#include <cstdlib>
#include...
173 просмотров
schedule
11.03.2022
синтаксические шаблоны enable_if
Я использовал enable_if примерно таким образом с различными версиями GCC (до 5.2):
template< bool b, std::enable_if_t< b >... >
void fn() { std::cout << 1 << std::endl; }
template< bool b, std::enable_if_t< !b...
159 просмотров
schedule
05.05.2023
Как специализировать шаблон функции с более чем 1 параметром?
Рассмотрим следующую шаблонную функцию-член:
template<typename E, typename N, typename P>
void Node::connectEvent( const bool( N::*fn )( const P& ), N *inst )
{
// Obtain unique event ID based on type.
size_t eventId = typeid( E...
63 просмотров
schedule
30.12.2022
Как определить функцию-член частично специализированного класса шаблона, используя boost::enable_if
Я хотел бы попросить вас помочь с определением частично специализированной функции-члена класса... пусть код объяснит больше:
У меня есть объявление общего класса:
template<typename GEAR_TYPE, typename ENABLER = void>
class...
196 просмотров
schedule
07.03.2023
Нужна помощь, чтобы понять функцию шаблона со сложными параметрами имени типа
Я изучаю книгу Страустроупа "Программирование на С++, 4-е издание". И я пытаюсь следовать его примеру в матричном дизайне.
Его матричный класс сильно зависит от шаблонов, и я изо всех сил стараюсь в них разобраться. Вот один из вспомогательных...
425 просмотров
schedule
23.02.2024
C ++: предоставление функции класса в шаблонном классе при наличии именованного члена в его шаблонном типе?
Я пытаюсь сделать следующее: шаблонный класс должен предоставлять некоторые функции, зависящие от того, содержит ли тип, для которого он был создан в шаблоне, переменную-член с заданным именем. В качестве примера приведен следующий псевдокод, который...
98 просмотров
schedule
04.11.2022
Правильный выбор перегрузки с параметрами шаблона шаблона и enable_if
У меня есть функция шаблона в VS2013, предназначенная для выполнения «глубокой копии» любого переданного ей объекта. Одна перегрузка для тривиальных типов просто вызывает оператор =. Но у меня также есть перегрузка, предназначенная для работы с...
145 просмотров
schedule
05.10.2022
С# Включить/отключить несколько текстовых полей на основе выбора поля со списком
Я обычный парень, который учится программировать. Я не люблю, когда код выглядит неряшливо и его можно консолидировать. При этом мне нужно консолидировать некоторый код, но мне не удалось найти информацию о том, как это сделать.
Я пытаюсь...
1429 просмотров
schedule
29.09.2022
Включить шаблон только для определенного шаблонного класса
Этот вопрос вдохновлен моим предыдущим вопросом Без вывода параметров шаблона из пакета параметров .
Рассмотрим следующий пример кода:
#include <memory>
#include <string>
template<typename... FArgs>
class Callback
{...
216 просмотров
schedule
09.07.2022
Использование std::enable_if с параметрами анонимного типа
Я пытаюсь использовать std::enable_if с неиспользуемым и безымянным параметром типа, чтобы не искажать тип return . Однако следующий код не компилируется.
#include <iostream>
template <typename T, typename =...
1011 просмотров
schedule
20.02.2023
определение типа аргумента функции (контейнер std, например, вектор) не выполняется при использовании enable_if и SFINAE
Кажется, я не могу понять, в чем я ошибаюсь. см. https://ideone.com/WKsZSN
Я пытаюсь создать функцию, которая существует только в том случае, если ее аргумент является определенным типом шаблонного класса, предоставляющего typedef для итератора....
228 просмотров
schedule
11.09.2022
Как разделить объявление и реализацию шаблонного класса с параметром шаблона по умолчанию?
Мне нравится разделять объявление и реализацию моих классов. Я знаю, что реализация шаблонов классов и функций также должна идти в файл заголовка, это не проблема.
У меня проблемы с реализацией этого класса:
template <size_t S,...
652 просмотров
schedule
14.06.2023