C++ 调用 C# 的 dll
工具 Microsoft Visual Studio2017
关于创建dll,请参考 C++、C#生成DLL入门教程
方式一-通过路径加载
#include "pch.h"
#include <iostream>
using namespace std;
extern "C" __declspec(dllexport) void testdll();
#using "../Debug/CSharpClassLibraryForJava.dll"
void testdll() {
CSharpClassLibraryForJava::Class1 ^a = gcnew CSharpClassLibraryForJava::Class1();
cout << a->add(22,33) << endl;
}
int main()
{
std::cout << "Hello World!\n";
testdll();
}
- C# dll放在C++项目debug目录下,其他路径也可以
- CSharpClassLibraryForJava::Class1 是 namespace::classname
- #using 报错的话,请检查以下内容,确保是“公共语言运行时支持/clr”
项目名称右键-属性
方式二 – 引用dll
引用-右键-添加引用,选中dll,代码同上,只是无需 #using来引用
C#调用C# dll
项目右键 - 添加引用 -浏览 -选中dll,代码如下
CSharpClassLibraryForJava.Class1 dll = new CSharpClassLibraryForJava.Class1();