gpt4 book ai didi

c# - 为什么 EventArgs 构造函数不 protected ?

转载 作者:太空狗 更新时间:2023-10-29 20:18:12 26 4
gpt4 key购买 nike

我想知道为什么 EventArgs构造函数不 protected ,因为为每个事件为空对象分配资源似乎是一种浪费(尽管很小),尤其是当存在单例时 EventArgs.Empty这显然使用起来更有效率。这让我感到惊讶,尤其是当 .NET 的其他部分确实有一个 protected /私有(private)的构造函数来避免多次不必要的分配时,例如Comparer<T> .

是否存在创建 new EventArgs() 的情况? (不是子类)实际上是有意义的,还是构造函数仅可用于简化没有经验的开发人员的使用?

最佳答案

我会说这是因为 EventArgs 类的 ComVisible 属性设置为 true

这得到了以下 FxCop rule 的支持:

A reference type that is specifically marked as visible to COM contains a public parameterized constructor but does not contain a public default (parameterless) constructor.

关于c# - 为什么 EventArgs 构造函数不 protected ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6149947/

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