gpt4 book ai didi

C# Reflection- 查找一个类是否定义了析构函数

转载 作者:太空狗 更新时间:2023-10-29 17:44:48 25 4
gpt4 key购买 nike

我正在尝试查找一个类是否具有使用反射的析构函数。我确实在 System.Reflection 中看到了获取构造函数的方法。有没有办法在 C# 中查找某个类是否定义了自定义析构函数?

最佳答案

析构函数方法似乎被称为Finalize()。所有对象都有这个,所以你想通过尝试使用 DeclaredOnly 绑定(bind)标志来检查它是否在该对象上明确定义。它也是私有(private)的和非静态的,因此您还需要其他两个标志。

myObj.GetMethod("Finalize",
BindingFlags.NonPublic |
BindingFlags.Instance |
BindingFlags.DeclaredOnly)

如果对象没有定义的析构函数,这将返回 null。

关于C# Reflection- 查找一个类是否定义了析构函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19554556/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com