【发布时间】:2010-12-25 10:31:59
【问题描述】:
有没有办法在下面的代码中保持相同的功能,但不必创建委托?我正在与包含许多不同 DeleteSomethingX(ref IntPtr ptr) 方法的第 3 方 API 进行交互,并且我正在尝试集中用于 IntPtr.Zero 检查的代码。
private void delegate CleanupDelegate(ref IntPtr ptr);
...
private void Cleanup(ref IntPtr ptr, CleanupDelegate cleanup)
{
if (ptr != IntPtr.Zero)
{
cleanup(ref ptr);
}
}
【问题讨论】:
-
您到底想做什么?
-
创建委托有什么问题?
-
您确定第三方 API 不将空指针作为 NOP 处理吗?
标签: c# .net pointers delegates ref