gpt4 book ai didi

c++ - 有没有办法在 map 中流式传输?

转载 作者:太空狗 更新时间:2023-10-29 20:42:23 25 4
gpt4 key购买 nike

我有一个文件,其中的映射条目由行分隔,键和值由“:”分隔,类似于:

one : 1
two : 2
three:3
four : 4

我在名为 dict 的 ifstream 中打开它并运行以下代码:

string key, value;
map< string, int > mytest;


while( getline( dict, key, ':' ).good() && getline( dict, value ).good() )
{
mytest[key] = atoi( value.c_str() );
}

有更好的方法吗?是否有一个 getline 功能可以从键中删除空格? (我试图在没有提升的情况下做到这一点。)

最佳答案

是的,你可以简单地将冒号扔进垃圾变量

string key, colon;
int value;

while(cin >> key >> colon >> value)
mytest[key] = value;

由此,您应该可以确定冒号是由空格分隔的,并且您的 key 不包含任何空格。否则它将在 key 字符串中读取。或者您的字符串部分将被读取为冒号。

关于c++ - 有没有办法在 map 中流式传输?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18855128/

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