Создание повторно используемого кода - PullRequest
0 голосов
/ 17 февраля 2012

Я написал игровой движок на C ++, однако я хотел бы упаковать его в файл, чтобы мне не приходилось перекомпилировать его каждый раз, когда я хочу создать игру. Я прочитал статьи MSDN о написании кода для повторного использования и помещения его в управляемую сборку или в .dll. Но, как мне сказали, .dll - плохая идея и боль в шее. Я бы сделал управляемую сборку, однако метод, который вы бы сделали, как описано в статье MSDN, похоже, что они хотят, чтобы вы все поместили в класс или использовали CLR (или что-то грубое в этом роде). В моем движке я использовал подход C в разных случаях, и я не хочу разбирать движок просто для того, чтобы упаковать его, кроме того, я бы в конечном итоге хотел сделать его кроссплатформенным, поэтому я не хочу делать это тоже "Microsoftish". Поэтому я предполагаю, что вопрос заключается в следующем: есть ли хорошая альтернатива .dll или управляемой сборке или что-то, что я могу использовать, не разрывая мой код?

P.s Я бы просто использовал .lib (статическую библиотеку), но я считаю, что для запуска требуется .dll.

Информация:

  • Язык: C ++.
  • Компилятор, IDE, Linker ect: Microsoft Visual C ++ 2008.
  • Платформа, ОС, ECT: Windows 7.
  • Библиотеки, используемые в приложении: SFML 1.6, Luabind, Lua C API.

Источники:

1 Ответ

1 голос
/ 17 февраля 2012

Статическая библиотека (.lib) - самый естественный ленивый выбор.Вы скомпилируете его один раз с помощью компилятора, а затем просто создадите ссылку на остальную часть вашей программы.Если вы изменяете программу, но не движок / библиотеку, вы не перекомпилируете последнюю.Конечно, вам нужно будет скомпилировать библиотеку с каждым используемым компилятором и для каждой ОС, если они не совместимы.

...