gpt4 book ai didi

c++ - 使用 getline 解析用户输入的最佳方法?

转载 作者:行者123 更新时间:2023-11-28 08:06:53 25 4
gpt4 key购买 nike

因此,我需要一些帮助来了解从用户那里获取输入并将其存储在 2 种不同数据类型中的最佳方式。我想做的是以输入为例:

remove 44

我想将第一部分“remove”保存为字符串以了解我需要调用哪个函数,但随后我想将 44 保存为 int 以作为所述函数的输入.到目前为止我所拥有的是

string In;
getline (cin, In);

现在我应该更改 getline 以分隔空间以获取两个字符串吗?如果是这样,我该怎么做,或者我应该只获取整个输入并从中创建 2 个子字符串?

我知道这是一个非常简单的问题,但我没有太多使用 C++ 处理用户输入的经验。任何帮助将不胜感激。

最佳答案

你可以重载运算符>>来做这件事

struct SomeStruct
{
string id;
int data;
};

istream & operator>>(istream& is, SomeStruct& someData)
{
is >> (string&)someData.id;
is >> someData.data;

return is;
}

后来

SomeStruct test;
cin >> test;

要了解有关运算符的更多信息>>,请查看 istream::operator>> .

要了解有关运算符重载的更多信息,请查看 C++ Operator Overloading Guidelines .

关于c++ - 使用 getline 解析用户输入的最佳方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10116041/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com