gpt4 book ai didi

c++ - 对使用从 C++ 文件中读取的值有帮助吗?

转载 作者:行者123 更新时间:2023-11-28 05:57:23 24 4
gpt4 key购买 nike

我尝试编写的程序遇到了一些问题,我希望有人可以就如何处理我面临的问题提供一些指导......

到目前为止,这是我的代码:

#include <iostream>
#include <vector>
#include <string>
#include <fstream>

using namespace std;

struct City
{
string name;
int x;
int y;
};

int main()
{
vector<City>Coord;

City entries[10];

ifstream fin("Locations.txt");

int nb_entries;

string name;

int x, y;

for(nb_entries = 0; fin.good() && nb_entries < 10; nb_entries++)

{

fin >> entries[nb_entries].name;

fin >> entries[nb_entries].x;

fin >> entries[nb_entries].y;

cout << "City: " << entries[nb_entries].name << ", ";

cout << "x: " << entries[nb_entries].x << ", ";

cout << "y: " << entries[nb_entries].y << ", " << endl;

}

system("pause");

return 0;

这会读取我存储在文本文件中的坐标并将它们输出到屏幕。文本文件的格式如下:

城市 1 x1 y1

城市2 x2 y2

...

城市10 x10 y10

这个阶段的输出让我可以看到我的代码是否正常工作。我现在需要做的是在获得用户选择城市的输入后使用这些坐标。我曾尝试将坐标读入一个数组和一个 vector ,但我正在努力寻找将它们存储为值并稍后在程序中调用它们的最佳方法。我对编程和 C++ 还是个新手,所以非常感谢任何帮助!

最佳答案

一种选择是使用从城市名称到坐标对的 map ,如下所示:

#include <unordered_map>

unordered_map<string, pair<int,int> > myMap;

您可以像这样将数据放入myMap:

myMap[cityName] = make_pair(x,y);

并且可以像这样记忆它们:

x = myMap[cityName].first;
y = myMap[cityName].second;

关于c++ - 对使用从 C++ 文件中读取的值有帮助吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33883517/

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