我正在编写一个将频繁访问数百个单词的程序,因此我不想将它们全部存储在一个 .txt 文件中,而是必须使用 cpu 和硬盘驱动器来访问、处理和存储在一个 vector 中,我想将它们包含在其中该程序。这样做的最佳方法是什么? (同时保持源代码清洁)
该程序将在问题中使用代词、动词等识别名词。
(我用的是MV)
*编辑 我想最好的选择是根据以下响应在初始化时将数据加载到程序中。
最佳答案
如果它们在编译时已知,最好的方法是像这样将它们存储在数组中。
std::string words[] =
{
"foo" ,
"bar"
};
or
const char* words[] =
{
"foo" ,
"bar"
};
在程序中,您可以访问它们,例如 words[0]
和 words[1]
等。根据您的操作系统,程序也可以嵌入资源。您也可以使用该方法。
您也可以像当前一样存储它们。数百个单词应该很快就能读完。无关文件的优点是无需重新编译文件即可更改它们。但是可能会遇到这样的缺点,即当您分发程序时,您还必须分发额外的文件。用户可能会乱用纯文本文件,而您也必须处理格式错误的输入文件。
您还没有提到您打算如何访问这些词。取决于您可能需要其他数据结构,例如 set
、 map
甚至可能是 Trie
关于c++ - 在代码中包含 100 多个单词的最佳方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8458915/