Встраивание данных в приложение C ++ - PullRequest
2 голосов
/ 25 апреля 2009

Существует ли независимый от платформы метод для встраивания файловых данных в программу на c ++? Например, я делаю игру, а уровни хранятся в текстовом формате. Но я не хочу распространять эти текстовые файлы вместе с самой игрой. Какие у меня варианты?

Ответы [ 3 ]

2 голосов
/ 26 апреля 2009

Это было задано здесь раньше . По сути, вы просто называете данные доступным символом. Мне больше нравится этот метод:

Вы всегда можете написать небольшую программу или скрипт, чтобы преобразовать ваш текстовый файл в файл заголовка>> и запустить его как часть процесса сборки.

1 голос
/ 26 апреля 2009

Если уровни действительно хранятся просто как текст, вы можете просто объявить статические массивы в вашем источнике:

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

Вы можете скомпилировать и связать это прямо в вашем приложении и ссылаться на него, как и на любую другую переменную.

1 голос
/ 26 апреля 2009

Вы всегда можете поместить текст в код. Скажем, например, как массив строк или массив указателей на символы.

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

Конечно, в стандартных библиотеках есть лучшие структуры, но в любом случае вы помещаете текст в исходный файл.

Вы также можете подумать о том, чтобы поместить текст в пакет и зашифровать его, если вы беспокоитесь о том, что люди могут получить к нему доступ.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...