如何使用GUI将外部库和项目导入我的C ++项目?

时间:2016-05-26 22:14:13

标签: c++ c++11 codeblocks libraries

好的,所以我认识Java并且已经在libGdx上摆弄了很长一段时间。 C ++是"语言知道"在游戏开发行业,似乎,因为我想在毕业时成为一名游戏开发人员,我已经确定学习这门语言不过是有益的。我已经学习了记忆管理的基础知识并且已经应用​​了我的知识;

  1. 学习如何解析复杂的文本格式(你知道,比xml更复杂的东西)
  2. 为伪语言编写解析器,我可以用它来序列化C ++对象并表达基本的数学和命令/功能。
  3. 现在我想运用我的知识做一些更有趣的事情;制作一个小游戏!我宁愿推迟学习微处理器和GPU如何工作直到〜大学,所以我需要使用某种框架。为此,我需要能够从外部库导入代码。在Java中,我们通常将库放入libs文件夹中,该文件夹通过使用花哨的maven / gradle设置链接到核心项目。

    我设置了GCC编译器并下载了最新的Code :: Blocks二进制文件,并将它们安装在我过时的Windows笔记本电脑上(我不得不单独下载编译器和IDE,因为我是一个Eclipse男孩)。我使用Code :: Blocks而不是Visual Studio C ++的原因是什么?

    我破产了,买不起快递,社区仍然是2个frickin演出,在寒冷的冬日像糖蜜一样上山跑(我的电脑只有2演出RAM,因为我太便宜了,不能额外支付200美元一台笔记本电脑的寿命大约为1年,而Code :: Blocks则为500兆,并且像魅力一样。

    无论如何,我的咆哮,问题是在Java中我们可以在任何自尊的IDE中点击几下导入一个外部库。 C ++似乎有所不同。我搜索了几个可以充分满足我需求的库,因为我只需要一个渲染库。 Oxygine似乎是最好的,Angel2D是我名单上的第二个。我做了some googling yahooing但发现很少使用。事实上,似乎C ++缺乏“导入”的概念。外部图书馆。 #import似乎只适用于核心语言库和项目文件。我发现的最接近的是dynamically loading libraries,但即便如此也不清楚。

1 个答案:

答案 0 :(得分:1)

C ++和Java中的故事在这里并没有什么不同(尽管#include在C ++中的工作原理与import在Java中的工作方式有很大不同)。在这两种情况下,都有:

  • 编译时使用的符号
  • 运行时使用的定义/实现

Java中的import语句和C ++中的#include语句有效地处理了第一个语句。在这两种语言中,第二种语言是代码配置/调用/捆绑的结果;在Java中,* .jar文件实际上最终提供导入的符号由“classpath”决定,而在C ++中,它依赖于特定的链接器(对于GCC,传递-lname表示库的名称,并且-Lpath/to/dir指定要查找的候选目录,尽管各种环境变量可以覆盖最终加载的实际库。

虽然拖放可能在某些IDE *中有效,但这对于C ++和Java来说都不是一个很好的解决方案,因为IDE特定的构建系统很难自动化,重现或与其他人共享开发人员。您会发现,在行业中,使用BazelGradleCMakeMake等构建系统创建命令行构建配置的情况更为常见。 。这些系统使用的配置更易于在IDE之间共享,重要的是,可以通过持续集成/测试系统轻松调用。大多数IDE都支持添加一个构建/测试步骤,只需调用任意命令即可运行这些构建系统。如果进行了设置,只需编辑构建配置即可添加新的库依赖项。

*很抱歉让人失望,但我在Windows上尝试了几个C ++ IDE,而且我不知道它们中的任何一个会让你简单地将库拖放到其中。

相关问题