在c ++应用程序中嵌入数据

时间:2009-04-25 19:56:56

标签: c++ cross-platform

是否有与平台无关的方法将文件数据嵌入到c ++程序中?例如,我正在制作游戏,并且级别以文本格式存储。但我不想将这些文本文件与游戏本身一起分发。我有什么选择?

3 个答案:

答案 0 :(得分:2)

这是asked here before。基本上,您只需使用可访问的符号命名数据。我最喜欢这种方法:

  

您始终可以编写一个小程序或脚本来将文本文件转换为标题> >将文件作为构建过程的一部分运行。

答案 1 :(得分:1)

您始终可以将文本放入代码中。比如说,作为一个字符串数组或字符指针数组。

String txt[] = {
  "My first line.\n",
  "My second line.\n"
}

当然标准库中有更好的结构,但无论如何都要将文本放在源文件中。

如果您担心有人访问它,您还可以考虑将文本放入包中并对其进行加密。

答案 2 :(得分:1)

如果级别实际上只是作为文本存储,则可以在源代码中声明静态char数组:

static const char level1[] = "abcdeabcdeabcde....";

您可以将此权限编译并链接到您的应用程序中,并像任何其他变量一样引用它。