非托管C++代码:
class CPLUSALOG_API_20211029 CCTest
{
public:
CCTest();
int* Get();
~CCTest();
protected:
Hobject* m_pRegion;
}
CCTest::CCTest()
{
m_pRegion = new Hobject();
Halcon::gen_circle(m_pRegion, 10.0, 10, 10);
}
int* CCTest::Get()
{
return (int*)m_pRegion->Id();
}
CCTest::~CCTest()
{
delete m_pRegion;
}
C#代码:
public class CTest
{
public CTest(System.IntPtr ptr)
{
m_region = new HObject(ptr);
HTuple tArea, tRow, tCol;
HOperatorSet.AreaCenter(m_region, out tArea, out tRow, out tCol);
}
HObject m_region;
}
调用方,托管C++代码:
CCTest ctest;
ProjectBaseLib::NGClass::CTest^ test = gcnew ProjectBaseLib::NGClass::CTest((System::IntPtr)ctest.Get());
调用结果:
面积:314
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 从HTTP原因短语缺失研究HTTP/2和HTTP/3的设计差异
· 三行代码完成国际化适配,妙~啊~
2020-11-16 WCF服务端调用客户端.
2019-11-16 分配任务的时候,要给出需求而不是解决方案