C++ 编写抽象函数会将整数转换为字符串

C++ 编写抽象函数会将整数转换为字符串,c++,stl,abstract-class,C++,Stl,Abstract Class,可能重复: 如何在C++中编写C++函数来获得“10”? 我是C++新手。 非常感谢。你可以有一个方法 #include <sstream> #include <string> //... std::string MyInteger::toString() { std::stringstream stream; stream << m_val; return stream.str(); } #包括 #包括 //... std::s

可能重复:

如何在C++中编写C++函数来获得“10”? 我是C++新手。


非常感谢。

你可以有一个方法

#include <sstream>
#include <string>
//...

std::string MyInteger::toString()
{
    std::stringstream stream;
    stream << m_val;
    return stream.str();
}
#包括
#包括
//...
std::string MyInteger::toString()
{
std::stringstream;

stream你可以有一个方法

#include <sstream>
#include <string>
//...

std::string MyInteger::toString()
{
    std::stringstream stream;
    stream << m_val;
    return stream.str();
}
#包括
#包括
//...
std::string MyInteger::toString()
{
std::stringstream;

stream除了上述方法外,您还可以像这样重载强制转换操作符:

class MyInteger
{
  ...
  operator std::string() { /* string conversion method here */ }
};
如以下链接所述

除上述方法外,您还可以像下面这样重载强制转换操作符:

class MyInteger
{
  ...
  operator std::string() { /* string conversion method here */ }
};
如以下链接所述

另外-在您的情况下,您不需要定义析构函数,默认值就足够了,并且您没有
m_val
成员。此外,要通过强制转换将
MyInteger
转换为
std::string
,就像您需要定义强制转换运算符一样。或者您可以定义
转换为
member function.allow-在您的情况下,您不需要定义析构函数,默认值就足够了,并且您没有
m_val
成员。此外,要通过强制转换将
MyInteger
转换为
std::string
,您需要定义强制转换运算符。或者您可以定义
转换为\u string()
成员功能。+1更好。删除我的!+1更好。删除我的!