template <typename T>
struct DoubleToStr : public exprtk::igeneric_function<T>
{
typedef exprtk::igeneric_function<T> igenfunct_t;
typedef typename igenfunct_t::generic_type generic_t;
typedef typename igenfunct_t::parameter_list_t parameter_list_t;
typedef typename generic_t::string_view string_t;
typedef typename generic_t::scalar_view scalar_t;
DoubleToStr()
: exprtk::igeneric_function<T>("T", igenfunct_t::e_rtrn_string)
{}
inline T operator()(std::string& result,
parameter_list_t parameters)
{
result.clear();
/*string_t string(parameters[0]);*/
/*result = static_cast<std::size_t>(scalar_t(parameters[0])());*/
scalar_t myval(parameters[0]);
result = myval;
return T(0);
}
};
Я могу видеть скалярное значение в myval(parameters[0])
,
Мой вопрос: как мне назначить его std::string
результат? Или есть какая-то другая логика, с которой вы бы мне предложили пойти?
Задача ещё не решена.
Других решений пока нет …