从文件读取到C ++中的数据结构

时间:2011-11-17 06:44:09

标签: c++ file words

所以,我有一个文本文件(data.txt),这是一个故事,所以只是一句一句,而且相当长。我要做的是从文件中取出每个单词并将其存储在某种类型的数据结构中。作为用户输入,我将得到一个单词作为输入,然后我需要找到10个最接近的单词(在data.txt中)到该输入单词,使用一个函数找到2个字符串之间的Levenshtein距离(我认为功能虽然)。所以我想我会使用getline()作为分隔符来单独存储单词。但是我不知道应该将这些单词存储到哪里以便我可以轻松访问它们。还有一个事实是我不知道data.txt文件中有多少单词。

我可能已经解释了这个非常抱歉,我会回答你的任何问题,但要澄清。

2 个答案:

答案 0 :(得分:2)

在C ++中,您可以将单词存储在字符串向量中:

#include <vector>
#include <string>

//....

std::vector<std::string> wordsArray;
// read word
wordsArray.push_back(oneWord);

答案 1 :(得分:1)

您需要一个能够“包含”您阅读的字符串的数据结构。 标准库提供了许多“容器”类,如:

  • 矢量
  • 双端队列
  • 列表
  • 设置
  • 地图

检查http://en.cppreference.com/w/cpp到容器库,找到最适合您需求的容器库。 正确答案的变化不仅取决于你必须“存储它们”的事实,还取决于你之后要对它们做些什么。