2015-11-25 2 views
3

F # В чем разница между [<AbstractClass>] и [<AbstractClassAttribute>], оба кажутся ярлыками типа абстрактными.F # В чем разница между абстрактным классом и abstractclassattribute

[<AbstractClass>] https://msdn.microsoft.com/en-us/library/dd483471.aspx

[<AbstractClassAttribute>] https://msdn.microsoft.com/en-us/library/ee370513.aspx

+1

Это то же самое, только что задокументированное в двух разных местах. – ildjarn

ответ

7

Там нет никакой разницы, они оба относятся к AbstractClassAttribute. В F # (и C#) вы можете опционально опустить суффикс Attribute при прикреплении атрибута с помощью [<AttributeName>].

См: https://msdn.microsoft.com/en-us/library/dd233179.aspx#Anchor_1

Обратите внимание, что если вы хотели бы сослаться на атрибут в обычном коде, вы должны использовать полное имя.

let example = AbstractClass() // ERROR 
let example = AbstractClassAttribute() // OK 
Смежные вопросы