我使用Visual Studio 2010创建了一个Windows Form项目,并从使用OpenCV的旧版控制台项目中移植了一些代码。我得到了以下消息时,我编译:OpenCV警告:“函数编译为本机”
opencv\include\opencv\cxoperations.hpp(81): warning C4793: 'anonymous namespace'::CV_XADD' : function compiled as native :
一些挖后,它似乎是CLR支持设置的问题。我见过几篇关于同一问题的文章,但我的问题会更一般:
与“native”和“clr”有什么关系?各种级别的clr支持有什么不同?我认为我没有找到一个能够简洁地告诉我有关这个概念的页面,然后再重载一堆其他细节。
谢谢。
感谢您的快速和翔实的回应。我假设我列出的警告只是说“这里的这个方法不是.NET库的一部分,我们把它当作一个正常的C++函数”。我正在使用Windows窗体应用程序,因为很容易组装一个Win32项目看不到的GUI系统。由于我从正常的C++应用程序借用代码,我想这就是为什么我得到这个警告。然而,它让我感到困惑,至于为什么CLR和本机似乎不能很好地混合(即我必须使用'String ^'而不是'string')。我从来没有与其他语言的概率。 – 2012-02-15 03:40:19