c++ - 如何创建用 C++ 编写的 protected 程序的库/插件/API?

标签 c++ api plugins wrapper protected

<分区>

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

假设此程序是汽车的“导航 Controller ”,因此该程序可以制作汽车即将行驶的道路的导航网格,并计算它应该行驶在道路上的哪个位置以及何时转弯计算你是否应该刹车并在转弯的外侧或内侧...

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

任何正在制作游戏的程序员,比如说“汽车模拟器”(而不是飞行模拟器),都希望在他们的游戏中有一个选项,您可以将汽车置于“自动驾驶”状态,需要这个插件,导航插件。 ..

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

int CalculateSteeringAxis(Pos currentPosition, Goal currentGoal)

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

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

最佳答案

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

关于c++ - 如何创建用 C++ 编写的 protected 程序的库/插件/API?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14877165/

相关文章:

html - 将 CSS 类应用于同一标签的插件生成元素?

zend-framework - 在前端 Controller 插件 Zend 中重定向

java - 不扩展 JavaPlugin

c++ - glutDisplayFunc 显示垃圾

c++ - ppt/pptx 转换为 html 或其他格式

api - youtube feed api orderby参数未显示所有结果

ruby-on-rails - 在 GET 请求中传递句号(句点)和正斜杠?

c++ - 如何写入 boost::asio::mutable_buffer?

c++ - C++中不同对象的多个链表

python - 使用 API 从 Goodreads 获取文本评论