【发布时间】:2012-07-17 22:25:55
【问题描述】:
我正在编写一个 C++ 程序来检查加泰罗尼亚语中是否存在某些单词,所以我有一个带有加泰罗尼亚语词典的向量:
const vector<string> dict={"aaron","ababol","abac","abaca","abacallanada","abacallanava","abacas","abacial", ... ,"zum-zum","zur","zuric","zwitterio"};
问题是字典有107776个条目,所以当我尝试编译文件时:
g++ -Wall file.cc -std=c++0x -o file.exe
它在一段时间内什么都不做,然后 Windows 说它没有响应并关闭它。
如何编译它?有没有更好的方法来存储这种类型的数据(数组,...)?
【问题讨论】:
-
将它们放在一个文件中并在运行时解析它?
-
我会让你的程序读取包含字典的文件。也使字典更易于维护。
-
将大量数据编译成二进制文件有很多缺点,但优点很少。考虑不要这样做!
-
嗯,我目前正在编译一个巨大的数组,生成一个 5MB 的目标文件,这对我来说大约需要三到四秒。
-
您是通过 IDE 编译它吗?也许在命令行上可能会更好(Cygwin 并在后台运行)?