gpt4 book ai didi

c# - 何时为成员添加 'this' (C#) 前缀的好规则是什么?

转载 作者:可可西里 更新时间:2023-11-01 03:14:02 25 4
gpt4 key购买 nike

如果我正在访问一个成员字段、属性或方法,我永远不确定什么时候应该在它前面加上“this”。

我不是在询问需要它的情况,例如局部变量具有相同名称的情况。我说的是意思完全相同的情况。哪个更具可读性?是否有任何我应该遵循的标准、最佳实践或经验法则?它应该在整个类或整个代码库中保持一致吗?

最佳答案

在这一点上我不同意 StyleCop,而且我什至不确定 StyleCop 的意见是否应该被解释为 Microsoft 的官方指南。它是 Microsoft 使用的内部工具,但并非所有团队都使用它,也并非所有团队都使用所有规则。

在任何地方都添加 this 是没有必要的,而且通常只会增加困惑。它不会提高性能,而且我不相信在整个代码中添加 this 也能提高可读性。

你可能会听到这样的争论,它使变量的定义位置更加清晰,但我认为如果你的类/方法太长太复杂以至于很难弄清楚在哪里声明了什么,那么你可能应该重构无论如何。如果您使用 single responsibility rule对于短函数,变量是成员、函数参数还是局部变量应该很明显。

正如您所指出的,有时这是必要的。例如在构造函数中,如果你想设置一个与参数同名的私有(private)成员。

public class Foo
{
private Bar bar;

public Foo(Bar bar)
{
this.bar = bar;
}
}

关于c# - 何时为成员添加 'this' (C#) 前缀的好规则是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2732045/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com