我的程序中有一个类,它有一个成员变量,一个名为number的int,以及一个成员函数getName(),它是MEANT,它将单词"Dice:#"作为const char*返回,但是#替换了按类中存储的数字.
const char* getName(){
return "Dice:";
}
Run Code Online (Sandbox Code Playgroud)
效果很好.
const char* getName(){
std::stringstream ss;
ss << number;
std::string s;
s = "Dice: " + ss.str();
return s.c_str();
}
Run Code Online (Sandbox Code Playgroud)
不能正常工作,并返回似乎是垃圾的东西.我无法弄清楚正确的方法.如果我使用cout打印s.c_str()它打印我期望的.