今天我注意到一些奇怪的事情,我最初认为它无法编译:
[Serializable Obsolete]
class Program
{
static void Main(string[] args)
{
}
}
请注意,serializable 和 obsolete 之间缺少逗号。它给出了一个错误,但它仍然可以编译!为什么是这样?属性甚至可以这样工作吗?
最佳答案
似乎 Rene 已经说过 resharper 给出了这个错误。我暂停了 resharper,现在我根本没有收到任何错误。所以对于属性来说,这似乎是 C# 中非常好的语法。
但我不知道为什么 resharper 会出现此错误。当然,这可能是奇怪的语法并且违反约定,但这就是警告不是错误。
关于c# - 没有逗号的单行属性?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39390483/