【发布时间】:2013-07-24 21:19:25
【问题描述】:
我有一些代码:
private static st_createInstance createInstance;
private static st_destroyInstance destroyInstance;
private static st_getVersionId getVersionId;
private static st_getVersionString2 getVersionString2;
//...
[UnmanagedFunctionPointer (CallingConvention.StdCall)]
private delegate IntPtr st_createInstance ();
[UnmanagedFunctionPointer (CallingConvention.StdCall)]
private delegate void st_destroyInstance (IntPtr pHandle);
//...
现在如何使用反射使所有这些委托为空? (Idk 如何将 Fields 与委托类型进行比较)。
编辑:我想以简单的方式将它们全部归零,例如 foreach 循环。不想指定每个字段名称。
【问题讨论】:
-
(1) 将它们嵌套在
struct(值类)中。您可以只有一个静态实例。 (2) 将刚刚使用new创建的新实例分配给静态成员变量。
标签: c# reflection delegates