编程c++能调用c#语言编写的动态库吗?

 我来答
哎呀……18a91a6
2016-11-17 · TA获得超过4.2万个赞
知道大有可为答主
回答量:7246
采纳率:76%
帮助的人:3046万
展开全部

比较麻烦,不能保证,下面是别人的一些资料供参考:

1、创建C# DLL,需要指定应用类型为“类库”,代码:

 

namespace CSLib
{
public class Class1
{
private string name;  public string Name
{
get
{
return name;
}
set
{
name = "Your Name: " + value;
}
}
}
}

2、C++客户程序,是个控制台应用,代码:

 

#using "../debug/CSLib.dll"
using namespace CSLib; 
int _tmain(int argc, _TCHAR* argv[])
{
Class1 ^c = gcnew Class1();
 
c->Name = "zzj";
 
printf("%s/n", c->Name);
 
return 0;
}

3、几个注意点:
1 使用#using引用C# DLL,而不是#include。
2 别忘了using namespace CSLib;
3 使用C++/clr语法,采用正确的访问托管对象,即:使用帽子'^',而不是星星'*'。

4 要记得在项目的属性中,添加对C# DLL的引用。

5 引用C#的库的时候,要在引用之前写一行:#pragma once, 引用文件行后面加一行#pragma managed,不清楚是不是所有的引用C#动态库的C++项目都得这样写。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式