带有支持字段的私有属性的 C# 命名约定

问题描述 投票:0回答:1

私有属性有官方命名约定吗?
我用它们来延迟初始化昂贵的字段:

private string _veryExpensive;
private string VeryExpensive => _veryExpensive ??= VeryExpensiveInit();

我觉得既然它是私有的,它应该被命名为_veryExpense,但它与支持者字段名称冲突,其中一个必须重命名。

是否推荐使用PascalCase

VeryExpensive
或者也许
_VeryExpensive
代表私有财产名称?

使用属性范围的字段,我不必定义另一个私有支持字段,但它尚未实现:开放提案

我并不是特别要求惰性初始化,还有带有支持字段的私有属性的其他用例:在 C# 中使用私有属性有什么理由吗?

c# naming-conventions naming lazy-initialization
1个回答
0
投票

您已经有了正确的命名约定。

您使用的实际上是一个 Expression bodied 属性。在 C# 中,属性名称应使用 Pascal Case

公共属性和私有属性的命名约定没有区别,因此您已经使用了正确的约定。

© www.soinside.com 2019 - 2024. All rights reserved.