![]() |
1
20
基本上有三种正确的方法:
有一件事绝对不能做:
编辑:我也想解释一些选项2的好实践,它将最大化可移植性,并使原生C/C++组件也可以从非托管应用程序中使用。 你可以用一个宏来简化这个过程,通常的方法是: 在头文件中,所有函数声明看起来都像
在您的项目中,定义是
在消费项目中
然后,您可以为其他编译器(如不使用GCC的编译器)不同地定义宏。
完整的解决方案如下(在公共头文件中
然后你的VisualC++项目会引起
|
![]() |
2
4
简而言之: (1)创建一个新的C++/CLI库项目。 (2)写下你的代码。对于需要从C项目访问的类,请确保将其创建为clr类:
(3)编译项目并在您的C项目中添加对它的引用。 |
![]() |
3
1
|
![]() |
4
1
下面是一个应用程序的示例,我必须这样做。在我的例子中,我需要一个dll来包装对仅在.lib中可用的函数的调用。关键部分是
|
![]() |
Ray Jonathan · 导入的函数不是函数错误 7 年前 |
![]() |
Igor Vurdelja · JAVA和JNI之间的速度差异 7 年前 |
![]() |
Abegail · 在OpenCV中检测后,将图像放置在矩形上 7 年前 |
![]() |
Rodrigo Schreiner · 在背景图像顶部反应本机按钮组 7 年前 |