我正在尝试在返回语句中将int添加到字符串中,如下所示:
string Birthday::asString() {
return this -> day + "/" + this -> month + "/" + this -> year;
}
并收到以下错误:
错误:表达式必须具有整数或未整合的枚举类型
我是C ++的新手。
答案 0 :(得分:11)
最简单的方法是使用ostringstream(在标题<sstream>
中找到):
string Birthday::asString() {
std::ostringstream out;
out << this -> day << "/" << this -> month << "/" << this -> year;
return out.str();
}
您收到错误,因为C++
不知道如何将整数添加到字符串中。
答案 1 :(得分:7)
您可以使用std::to_string
:
string Birthday::asString() {
return std::to_string(this->day) + "/" +
std::to_string(this->month) + "/" +
std::to_string(this->year);
}
自C ++ 11以来可用