我在这里和那里看到Go就像一个现代的C / C ++(意思是:具有现代语法和内存管理,但速度一样快。) 我有兴趣利用这种语言的强大功能,在我们的.Net应用程序中包含一个图像处理库。
但是这引发了将Go库包装在.Net shell中的问题。我已经使用C ++ / CLI成功包装了一个C库;有没有办法用Go做类似的事情?
我不想使用之前尝试过的Swig,并且非常糟糕,并且大部分时间都不能工作。
答案 0 :(得分:4)
目前无法将Go代码嵌入到主要语言不是Go的程序中,因为Go需要一个可以挂钩到很多东西的非平凡的运行时。唯一可能的事情是从Go程序调用C函数;然后,这些函数可以依次调用Go函数。您可能希望设计一种使用某种进程间通信的解决方案,而不是要在Go中编写的部分在不同的进程中运行。