> move; return 0-6ren">
gpt4 book ai didi

c++ - 是否可以将数据类型视为输入流?

转载 作者:行者123 更新时间:2023-11-30 04:39:23 25 4
gpt4 key购买 nike

int main(int argc, char *argv[])
{
Move move;
ifstream inf("eof.txt");
inf >> move;
return 0;
}

istream& operator>> (istream &is, Move &move)
{
is >> move.c; // c = char c[2];
cout << move.c << endl;
return is;
}

eof.txt 有 2 个字符的行,所以如果它有“9r”,“9r”将存储在 move 的数据成员中(我将其公开只是为了方便)。为了确保它能正常工作,我输出了移动的数据,果然它能正常工作

我想做的是使用相同的运算符,但不是从文件或标准输入中获取输入,而是我将拥有一个保存所需输入的数据成员。因此,在 main 中,如果我有一个带有“1d”的字符数组,我需要能够使用相同的函数(不修改它)来做同样的事情。

这可能吗?任何帮助表示赞赏。

最佳答案

您可以使用 stringstream:

#include <sstream>

int main() {
char foo[] = "1d";
std::stringstream ss(foo);
Move move;
ss >> move;
return 0;
}

关于c++ - 是否可以将数据类型视为输入流?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2278274/

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