使用[ComVisible()]
和[ComVisibleAttribute()]
有什么区别?他们做的完全相同,所以有什么区别?
谢谢。
.net中的常见约定是用后缀Attribute
结束所有属性类 - 因此实际的类名称为 ComVisibleAttribute
。这符合扩展课程并将其名称保留为后缀的最佳实践。
但是,这使属性名称长而笨拙,并用大量的样板单词来缩小您的代码。这就是为什么C#编译器知道指定属性时,它将同时搜索给出的显式名称,并且如果找不到它,它将将Attribute
附加到它。
如果您检查了代码的编译源,您会发现[ComVisible]
和[ComVisibleAttribute]
都将其编译到恰好同一件事。这只是编译器给我们一些句法糖,以避免在各处看到单词属性。