为了账号安全,请及时绑定邮箱和手机立即绑定

从C ++调用C#代码

从C ++调用C#代码

万千封印 2019-09-02 15:27:13
我需要能够从C ++调用任意C#函数。http://www.infoq.com/articles/in-process-java-net-integration建议使用ICLRRuntimeHost :: ExecuteInDefaultAppDomain(),但这只允许我调用具有以下格式的方法:int method(string arg)调用任意C#函数的最佳方法是什么?
查看完整描述

3 回答

?
斯蒂芬大帝

TA贡献1827条经验 获得超8个赞

使用/ clr标志编译C ++代码。有了它,您可以相对轻松地调用任何.NET代码。


例如:


#include <tchar.h>

#include <stdio.h>


int _tmain(int argc, _TCHAR* argv[])

{

    System::DateTime now = System::DateTime::Now;

    printf("%d:%d:%d\n", now.Hour, now.Minute, now.Second);


    return 0;

}

这算是“C ++”吗?好吧,它显然不是标准C ++ ......


查看完整回答
反对 回复 2019-09-02
?
千万里不及你

TA贡献1784条经验 获得超9个赞

如果您不关心C ++程序(或其中的一部分)是否使用/ clr编译,您可以使用C ++ / CLI简单地调用任何.NET代码(只要您添加对它的引用)。 试试这篇文章。


编辑:这是一个很好的教程


另一种方法是将您的C#代码公开为COM。


查看完整回答
反对 回复 2019-09-02
  • 3 回答
  • 0 关注
  • 786 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信