gpt4 book ai didi

c++ ->> 运算符的使用

转载 作者:太空宇宙 更新时间:2023-11-04 16:02:40 25 4
gpt4 key购买 nike

任何人都可以解释一下代码中以下行的含义

 while (ss >> temp)

std::string str = "123:234:56:91";

for (int i=0; i<str.length(); i++)
{
if (str[i] == ':')
str[i] = ' ';
}

vector<int> array;
stringstream ss(str);
int temp;
while (ss >> temp)
array.push_back(temp);

最佳答案

因为 ss 是一个流,>>> 被重载以从流中进行格式化读取,具体取决于右侧操作数的类型。

因此,while(ss >> temp) 将从 stringstream 中读取以空格分隔的整数。这就是您将上面的“:”替换为“”的原因。当评估为 bool 值时,如果读取一个整数则为真,而在流末尾为 false

有关更多详细信息,请参阅示例 here

关于c++ ->> 运算符的使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40798181/

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