正如前程序员所说,我正在尝试实现分水岭图像分割:
我也尝试添加 FilterGrayToGray.cs 代码,但出现 win32.memcpy 错误
错误显示:“名称 win32 在此上下文中不存在”
如果我们将 Win32.memcpy 转换为 Microsoft.Win32.memcpy 那么它会说“命名空间中不存在 memcpy”
正如前程序员所说,我正在尝试实现分水岭图像分割:
我也尝试添加 FilterGrayToGray.cs 代码,但出现 win32.memcpy 错误
错误显示:“名称 win32 在此上下文中不存在”
如果我们将 Win32.memcpy 转换为 Microsoft.Win32.memcpy 那么它会说“命名空间中不存在 memcpy”
memcpy
不是 .NET Framework 的一部分 -memcpy
是需要创建 ap/Invoke 定义的非托管本机 API。的定义memcpy
必须在不同的文件中。
请参见下面的示例:
/// <summary>
/// Windows API functions and structures.
/// </summary>
internal static class Win32
{
/// <summary>
/// Copy a block of memory.
/// </summary>
///
/// <param name="dst">Destination pointer.</param>
/// <param name="src">Source pointer.</param>
/// <param name="count">Memory block's length to copy.</param>
///
/// <returns>Return's the value of <b>dst</b> - pointer to destination.</returns>
///
[DllImport( "ntdll.dll", CallingConvention = CallingConvention.Cdecl )]
public static extern IntPtr memcpy(
IntPtr dst,
IntPtr src,
UIntPtr count );
}
}