我对C++相当陌生。
我想为一个名为电影院4D的应用程序编写插件。
C4D的制造商Maxon提供了一个这样做的API。头文件位于一个特殊的文件夹中。
"cinema4dskd“是一个包含示例插件的Visual项目。在这个项目中有另一个名为_api的子项目。

弹出窗口是“项目依赖项”对话框。
_api子项目似乎是指向本地驱动器上的文件的链接,但它不在cinema4dsdk.vcproj中。
_api项目中的所有文件都位于Cinema4D安装路径(也称为_api )中的文件夹中。
它充满了头文件和.cpp文件。
这基本上是我需要编译的电影4D插件,包括"c4d.h“在我的源代码。
但问题就从这里开始。
我试图在代码中编译一个插件::块,我添加了所有的路径到"c4d.h",等等,但是每个编译器(gcc,甚至msvc !)告诉我成千上万的警告:
C:\Programs\Cinema 4D R12\resource\_api\ge_prepass.h 2668\警告:多字符字符常量\
最后是一个没有声明C4DGLuint的错误。为什么它在VC++中工作,而不与任何其他编译器一起工作?我肯定错过了什么,但我真的不知道是什么。
我不认为我可以分享这个项目,因为_api是由Maxon GmbH拥有的,但是如果您真的需要它,我请求您下载包含cinema4dskd项目的Cinema 4D演示版。
告诉我,如果你需要任何进一步的信息,我希望你有一个想法,什么可能是遗漏。为什么VC++可以正确编译插件,但我不能使用命令行或任何其他IDE?
非常感谢。
尼可拉斯
更新:
多字符常量错误示例:
C:\Users\niklas\Documents\CodeBlocks\Cinema4D\_api\src\gui.h|690|warning:多字符常量 C:\Users\niklas\Documents\CodeBlocks\Cinema4D\_api\src\gui.h|693|warning:多字符常量
690: BFM_SETVIEWPORTORIGIN = 'cORG',
691: BFM_SETVIEWPORTORIGIN_X=1,
692: BFM_SETVIEWPORTORIGIN_Y=2,
693: BFM_SETVIEWPORTSIZE = 'cSIZ',发布于 2011-09-29 20:20:49
'cORG'是所谓的多字符文字。它的值不适合于char变量,您需要一个'int‘来保存它,并且根据这篇文章
这是特定于编译器的事情是如何解释的。似乎您测试过的另一个编译器不支持这类文字。
https://stackoverflow.com/questions/7602341
复制相似问题