2010-09-23 194 views

回答

4

您可能希望爲該類創建託管C++包裝器,並使用/ clr(公共語言運行時支持)對其進行編譯,然後您可以在C#中使用它。 你可能也想看看PInvoke。

1

的CLR不使用本地C++類的直接支持,它更靜態方法通過的PInvoke或COM接口調用通過COM互操作使用。所以需要某種C++包裝器。

0

例如像這樣:

public unsafe class CppFunctionImport 
{ 
    [DllImport("ImageProcessingCpp.dll", EntryPoint = "PerformMovingAverage", ExactSpelling = true, CharSet = CharSet.Ansi, CallingConvention = CallingConvention.Cdecl)]//!-! 
    public static extern void PerformMovingAverage 
    (
     ref byte *image, 
     int width, 
     int height, 
     int stride, 
     int kernelSize 
    ); 
} 

創建你的小包裝,進口所需的功能和呼叫