-Поиск по дневнику

Поиск сообщений в rss_forum_sources_ru

 -Подписка по e-mail

 

 -Постоянные читатели

 -Статистика

Статистика LiveInternet.ru: показано количество хитов и посетителей
Создан: 29.07.2007
Записей:
Комментариев:
Написано: 80


conditional + disjunction + is_same

Воскресенье, 06 Июня 2021 г. 19:17 + в цитатник
Jin X: Что здесь не так?

    using DefaultsType = typename // 28
    std::conditional< // 29
    std::disjunction<
    std::is_same>::value,
    std::is_same>::value
    >::value, // 33
    typename Distribution::result_type,
    std::conditional<
    std::is_same::value,
    double,
    void
    >::type // 39
    >::type;
Надо сделать так, что если Distribution — это uniform_int_distribution или uniform_real_distribution, то тип должен быть Distribution::result_type, иначе если bernoulli_distribution, то double, в противном случае void.

Ошибки:
    33: error C3544: "_Traits": пакет параметров ожидает аргумент шаблона типа
    114: note: выполняется компиляция ссылки на экземпляр класс шаблон функции "the::Random"
    39: warning C4346: "std::conditional::value,double,void>::type": зависимое имя не является типом.
    39: note: укажите префикс "typename" для задания типа
    29: error C2923: std::conditional: "std::conditional::value,double,void>::type" не является допустимым аргументом типа шаблон для параметра "_Ty2"
    39: note: см. объявление "std::conditional::value,double,void>::type"
    33: error C2955: "std::disjunction": для использования класс шаблон требуется список аргументов шаблон


Добавлено
Всё, вопрос решён :)

    using DefaultsType = typename
    std::conditional<
    std::disjunction<
    std::is_same>,
    std::is_same>
    >::value,
    typename Distribution::result_type,
    typename std::conditional<
    std::is_same::value,
    double,
    void
    >::type
    >::type;

Найдите 10 отличий :P

https://forum.sources.ru/index.php?showtopic=421503&view=findpost&p=3847946

Метки:  

 

Добавить комментарий:
Текст комментария: смайлики

Проверка орфографии: (найти ошибки)

Прикрепить картинку:

 Переводить URL в ссылку
 Подписаться на комментарии
 Подписать картинку