Определить функции преобразования для преобразования типа multiply
в int
и std::string
, как показано в Метод 1 или использование Метод 2 (аналогично 1)
Метод 1
struct multiply
{
int t1,t2;
operator std::string()
{
std::stringstream k;
k<<(t1*t2);
return k.str();
}
operator int()
{
return t1*t2;
}
multiply(int x, int y):t1(x),t2(y){}
};
Метод 2
class PS
{
int _value;
public:
PS(int value) : _value(value) {}
operator std::string()
{
std::ostringstream oss;
oss << _value;
return oss.str();
}
operator int()
{
return _value;
}
};
PS multiply(int a, int b)
{
return PS(a * b);
}