【发布时间】:2012-07-11 04:44:10
【问题描述】:
我制作的 NSIS 插件可以包含 C++ 类还是只能是 C 代码?
我正在开发一个作为 Win32 DLL 的 NSIS 插件,但我在声明类的行的头文件中遇到编译错误。
编译错误是:
错误 C2061:语法错误:标识符“MyClass”
导致编译错误的行是:
class MyClass
怎么了?我不允许在 Win32 DLL 中使用类吗?我在 MS Visual C++ 2010 中编译。
【问题讨论】:
-
您当然可以在 DLL 中放置/使用类。也许您将代码编译为 C 而不是 C++?
-
一旦你编译,C 和 C++ 没有什么不同。正如 Jerry 所说,您必须使用 C 编译器而不是 C++ 编译器。
-
NSIS 插件 ABI 只是一个 C 函数导出,它不关心 dll 中的内部代码或用于创建它的语言。