Сообщение Re[5]: Можно ли сделать универсальный шаблон для разных комб от 19.01.2023 19:53
Изменено 19.01.2023 20:35 Videoman
Re[5]: Можно ли сделать универсальный шаблон для разных комбинаций whar_t и char
Здравствуйте, Евгений Музыченко, Вы писали:
ЕМ>Так чего именно не хватает в описании из того, что видно по коду?
Из описания замучаешься восстанавливать не работающий код. Куча вариантов может быть, тебе не очевидных.
V>>struct s_trait_t;
ЕМ>Без этого костыля никак?
Может так:
ЕМ>Так чего именно не хватает в описании из того, что видно по коду?
Из описания замучаешься восстанавливать не работающий код. Куча вариантов может быть, тебе не очевидных.
V>>struct s_trait_t;
ЕМ>Без этого костыля никак?
Может так:
#include <type_traits>
template <typename DstType, typename SrcType>
void s (DstType * Dst, SrcType const * Src)
{
using IntType = typename std::make_unsigned<SrcType>::type;
*Dst = static_cast<DstType>(static_cast<IntType>(*Src));
}
void f () {
wchar_t * W;
char * C;
s (W, W);
s (C, C);
s (W, C);
}
int main()
{
f();
}
Re[5]: Можно ли сделать универсальный шаблон для разных комб
Здравствуйте, Евгений Музыченко, Вы писали:
ЕМ>Так чего именно не хватает в описании из того, что видно по коду?
Из описания замучаешься восстанавливать не работающий код. Куча вариантов может быть, тебе не очевидных.
V>>struct s_trait_t;
ЕМ>Без этого костыля никак?
Может так ?:
ЕМ>Так чего именно не хватает в описании из того, что видно по коду?
Из описания замучаешься восстанавливать не работающий код. Куча вариантов может быть, тебе не очевидных.
V>>struct s_trait_t;
ЕМ>Без этого костыля никак?
Может так ?:
#include <type_traits>
template <typename DstType, typename SrcType>
void s (DstType * Dst, SrcType const * Src)
{
using IntType = typename std::make_unsigned<SrcType>::type;
*Dst = static_cast<DstType>(static_cast<IntType>(*Src));
}
void f () {
wchar_t * W;
char * C;
s (W, W);
s (C, C);
s (W, C);
}
int main()
{
f();
}