如何在C++中以这种方式返回一行文本?

How do I return a line of text in this way in C++?

本文关键字:一行 文本 返回 方式 C++      更新时间:2023-10-16

在我的代码中,我的任务是为游戏制作基本框架。

Item::Item(string itemName, int cost) {
name = itemName;
value = cost;
}

每个项目都从上面的构造函数中提取一个名称和一个值,下面的 toString 函数应该返回一个字符串,格式为,如果它是 cout,则类似于

cout << name << "(" << value << ") gold";
string Item::toString() {
}

问题是,我不知道如何返回这样的东西。

您可以使用std::ostringstream,例如:

#include <string>
#include <sstream>
std::string Item::toString() {
std::ostringstream oss;
oss << name << "(" << value << ") gold";
return oss.str();
}

或者,您可以使用简单的字符串连接,例如:

#include <string>
std::string Item::toString() {
return name + "(" + std::to_string(value) + ") gold";
}