1

对于我的大学,我们正在研究“导航控制器”,其中一部分是我们必须为受保护的程序创建一个库(API?)/插件。

假设该程序是汽车的“导航控制器”,因此该程序可以制作汽车将要行驶的道路的导航网格,并计算应该在道路上行驶的位置以及转弯时会计算您是否应该刹车并在转弯的外侧或内侧...

现在我们需要为这个导航控制器创建一个 API 或库或适配器模式(?)。导航控制器的算法应该隐藏在文件中,它不是开源的。它是用 C++ 编写的。

任何正在制作游戏的程序员,比如说“汽车模拟器”(而不是飞行模拟器),想要在他们的游戏中提供一个选项,你可以将汽车放在“自动驾驶”上,想要这个插件,导航插件......

程序员应该能够“包含”我们的插件/库/API 并使用我们的功能,例如

int CalculateSteeringAxis(Pos currentPosition, Goal currentGoal)

他应该看不到我们的代码/算法。任何游戏都应该能够“包含”我们的插件,所以我们的插件是一个独立的通用插件。

我找到了诸如“适配器模式/包装器”/“Win32 API”/“装饰器”之类的方法。这个问题的最佳解决方案可能是什么?

4

1 回答 1

1

您可以将代码编译为动态库(在 Windows 下称为“dll”,在 Linux 下称为“so”)或静态库。
然后将该库发布给其他程序员,他们可以为他们的游戏链接该库。
由于库被编译为二进制,其他人看不到您的源代码和算法。

于 2013-02-14T14:51:01.670 回答