C# 属性格式化约定

C# attribute formatting conventions

最近我看到属性标签在 C# 中有两种格式化方式(甚至在微软官方指南中):

[foo]
public class bar {...}

[foo] public datatype bar;

标签放在哪里有什么优势吗?标签应该根据它是在 class 还是数据类型上放置在特定位置?

这是个人喜好,不会对编译器产生任何影响,选择一个并保持一致。

也就是说,在这两种情况下我都更喜欢第一种格式,因为它可以在 classes 和数据类型上都有多个属性 - 我发现它更容易分散阅读。 如果你这样做,它会很快变得混乱。

以class的示例代码为例:

[Author("P. Ackerman", version = 1.1)]
[Author("R. Koch", version = 1.2)]
class SampleClass
{
    // P. Ackerman's code goes here... 
    // R. Koch's code goes here...
}

将其内联只会使其不可读。