为什么 StyleCop 建议在方法或属性调用前加上“this”前缀?

2023-11-21

我一直在尝试遵循 StyleCop 的项目指南,看看最终生成的代码是否更好。大多数规则都是合理的,或者是关于编码标准的意见问题,但有一条规则令我困惑,因为我没有看到其他人推荐它,而且因为我没有看到它有明显的好处:

SA1101:对{方法或属性名称}的调用必须以“this”开头。前缀表示该项目是该类的成员。

不利的一面是,这样代码显然更加冗长,那么遵循该规则有什么好处呢?这里有人遵守这个规则吗?


除非我处于您需要的场景,否则我不会真正遵循此指南:

  • 有一个actual歧义——mainly这会影响构造函数(this.name = name;)或类似的东西Equals (return this.id == other.id;)
  • 您想要传递对当前实例的引用
  • 您想在当前实例上调用扩展方法

除此之外,我认为这很混乱。所以我关闭了规则。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

为什么 StyleCop 建议在方法或属性调用前加上“this”前缀? 的相关文章

  • 如何在另一个应用程序中挂钩 api 调用

    我正在尝试挂钩另一个应用程序的 ExtTextOut 和 DrawTextExt GDI 方法调用 我知道我需要使用 GetProcAddress 来查找 gdi32 dll 中那些方法的地址 并用我的函数的地址覆盖我想要挂钩的进程中的地址
  • 计算文本框中换行的行数

    我在文本框中有一行文本 并且换行为多行 如何计算文本框中换行的行数 你可以使用String Split int lineCount txt Text Split new n r StringSplitOptions None Length
  • 在 Java 中创建 T 的新实例

    在C 中 我们可以定义一个泛型class A
  • 删除是如何工作的? [复制]

    这个问题在这里已经有答案了 可能的重复 C 编程 free 如何知道要释放多少 https stackoverflow com questions 1518711 c programming how does free know how m
  • 从代码中,如何创建对存储在附加属性中的对象的属性的绑定?

    我们有一个继承的附加属性来存储一个对象 在可视化树的更下方 我们希望从代码绑定到该对象的属性 通常我们像这样构建绑定的路径部分 var someBinding new Binding Path new PropertyPath Attach
  • 如何使用 SOAP 且不使用 WSE 在 .NET 中签署 Amazon Web 服务请求

    亚马逊产品广告 API 以前称为 Amazon Associates Web Service 或 Amazon AWS 实施了一项新规则 即自 2009 年 8 月 15 日起 向其发送的所有 Web 服务请求都必须经过签名 他们在其网站上
  • 将表(行)与 OpenXML SDK 2.5 保持在一起

    我想在 Word 文档中生成多个表 每行 2 行 但我想将这两行保留在一起 如果可能的话 new KeepNext 第一行不起作用 new KeepNext 第一行的最后一段不起作用 new CantSplit 放在桌子上不起作用 在所有情
  • 访问 ascx 文件中的母版页控件

    我有一个母版页文件 其中包含 2 个面板控件中的 2 个菜单 我还使用控件来检查用户是否登录并获取用户类型 根据我想要显示 隐藏面板的类型 控件本身不在母版页中引用 而是通过 CMS 系统动态引用 我想在用户控件中使用findcontrol
  • C# 编译器不会优化不必要的强制转换

    前几天 在写答案的时候这个问题 https stackoverflow com questions 2208315 why is any slower than contains在这里 关于溢出 我对 C 编译器感到有点惊讶 它没有按照我的
  • MFC:如何设置CEdit框的焦点?

    我正在开发我的第一个简单的 MFC 项目 但我正在努力解决一个问题 想要设置所有的焦点CEdit其中一个对话框中的框 我的想法是 当打开对话框时 焦点位于第一个编辑框上 然后使用 选项卡 在它们之间交换 我看到了方法SetFocus 但我无
  • C#6 中的长字符串插值行

    我发现 虽然字符串插值在应用于现有代码库的字符串 Format 调用时非常好 但考虑到通常首选的列限制 字符串对于单行来说很快就会变得太长 特别是当被插值的表达式很复杂时 使用格式字符串 您将获得一个可以拆分为多行的变量列表 var str
  • 从BackgroundWorker线程更新图像UI属性

    在我正在编写的 WPF 应用程序中 我有一个 TransformedBitmap 属性 该属性绑定到 UI 上的 Image 对象 每当我更改此属性时 图像就会更新 因此显示在屏幕上的图像也会更新 为了防止在检索下一张图像时 UI 冻结或变
  • Project Euler #8,我不明白我哪里出了问题[关闭]

    Closed 这个问题是无法重现或由拼写错误引起 help closed questions 目前不接受答案 我正在做项目欧拉第八题 https projecteuler net problem 8 其中我得到了这个大得离谱的数字 7316
  • 如何从 Rx Subscribe 回调异步函数?

    我想回调 Rx 订阅中的异步函数 例如 像那样 public class Consumer private readonly Service service new Service public ReplaySubject
  • .NET 4 的条件编译[重复]

    这个问题在这里已经有答案了 可能的重复 条件编译和框架目标 https stackoverflow com questions 2923210 c sharp conditional compilation and framework ta
  • 如何调试 .NET 运行时中的内部错误?

    我正在尝试调试一些处理大文件的工作 代码本身works 但 NET 运行时本身会报告零星错误 对于上下文 这里的处理是一个 1 5GB 文件 仅加载到内存中一次 在循环中处理和释放 故意尝试重现此否则不可预测的错误 我的测试片段基本上是 t
  • 如何在 winforms 应用程序的主屏幕显示之前显示欢迎屏幕?

    我想在应用程序启动时加载欢迎屏幕 然后用户单击欢迎屏幕上的按钮 然后关闭欢迎屏幕 最后显示主屏幕 static void Main startup method being called Application EnableVisualSt
  • 如何得知客户端从服务器的下载速度?

    根据客户的下载速度 我想以低质量或高质量显示视频 任何 Javascript 或 C 解决方案都是可以接受的 Thanks 没有任何办法可以确定 您只能测量向客户端发送数据的速度 如果没有来自客户端的任何类型的输入来表明其获取信息的速度 您
  • 如何将 SQL“LIKE”与 LINQ to Entities 结合使用?

    我有一个文本框 允许用户指定搜索字符串 包括通配符 例如 Joh Johnson mit ack on 在使用 LINQ to Entities 之前 我有一个存储过程 该存储过程将该字符串作为参数并执行以下操作 SELECT FROM T
  • 使用未分配的局部变量

    我遇到了一个错误 尽管声明了变量 failturetext 和 userName 错误仍然出现 谁能帮帮我吗 Use of Unassigned local variable FailureText Use of Unassigned lo

随机推荐

  • 如何以编程方式截取屏幕截图(Swift、SpriteKit)

    我尝试了建议的方法 但输出是白色的空白屏幕截图 这让我假设我没有在视图中添加任何内容 以下是我向视图添加图形的方法 addChild 方法随 SpriteKit 一起提供 它接受 SKSpriteNodes addChild backgro
  • 为什么安装 Visual Studio 2008 后,catch(TException) 处理块行为在调试器下有所不同?

    考虑下面的控制台应用程序 该应用程序具有一个带有通用捕获处理程序的方法 用于捕获类型的异常TException 当此控制台应用程序使用 调试 配置构建并在 Visual Studio 调试器下执行 即通过 vshost exe 时 在 Vi
  • h1 标签类别(备用)

    我知道 h1 标签对于 SEO 很重要 所以我所有的标题都是 H1 太棒了 现在 我需要在某些页面上有一个稍微不同的标题 作为文本的第一行 通常 我只是将 h1 复制为 h2 并交替 问题 是否可以在标题标签中添加一个类 我尝试过但没有成功
  • 是否可以在handlebars.js模板中使用JavaScript

    描述说明了一切 如何将 JavaScript 脚本放入车把模板中 我想为我的网站制作一个动态 Paypal 按钮
  • PyQt5:对象没有属性“连接”

    我目前正在关注thisPyQt 中线程的教程 代码来自here 由于它是用 PyQt4 和 Python2 编写的 因此我调整了代码以使其能够与 PyQt5 和 Python3 一起使用 这是 gui 文件 newdesign py cod
  • 优化 ORDER BY

    我正在尝试优化这个排序查询posts by reputation字段 第一个 然后id场 第二 如果没有第一个字段查询 则需要约 0 250 秒 但如果有第一个字段查询 则需要约 2 500 秒 意味着慢了 10 倍 太糟糕了 有什么建议吗
  • 我可以得到Python中“print”语句的输出吗?

    pythonw exe 没有控制台 所以我看不到 print 的输出 但我的程序在 python exe 中正常 在 pythonw exe 中失败 我只想查看 python 解释器的日志和我的 print 语句打印的日志 这可行吗 您可以
  • 如何将 Nginx IP 附加到 Kubernetes Nginx Ingress Controller 中的 X-Forwarded-For

    我想知道 如何将 Nginx IP 附加到 X Forwarded For 我在 Ingress 注释中添加了片段 apiVersion networking k8s io v1beta1 kind Ingress metadata nam
  • 适用于字节数组的哈希码方法?

    数组的最佳哈希方法是什么byte 这些数组是序列化的类对象 包含通过 TCP IP 在应用程序之间传递的 jpeg 图像 数组大小约为200k 任何内置的散列函数都可以 根据您对碰撞的关心程度 您可以选择以下选项 从最多碰撞到最少碰撞 MD
  • 托管在不同域上的 JavaScript 可以读取/修改另一个域的 DOM 吗?

    我有一个关于托管在域 例如 CDN 的域 例如 example com 上但从不同域 例如 example net 下的网站加载的 JavaScript 的潜在安全问题 限制的问题 现在想象一下 加载的 JavaScript 将仅读取 修改
  • 存储过程给出与 tsql 不同的结果集,仅在某些服务器上

    这是我昨天提出的问题的后续 您是否曾经遇到过 SQL Server 2008 返回与 SQL Server 2000 不同的结果集的情况 我最初认为存储过程在 sql2000 和 sql2008 上给出了不同的结果 但我已经做了相当多的缩小
  • CLLocation距离转换

    我在 CLLocationDistance 类型的变量中有距离 我需要将其转换为整数变量 我该怎么做 我有用 CLLocationDistance kilometers int distance kilometers intValue 但它
  • 自动终止 AWS EC2 实例?

    有没有办法让 Amazon Web Services EC2 实例自行终止 亚马逊是否有任何东西允许实例在运行超过一个小时后自行终止 Hara Kiri 我可以更改正在运行的实例上的脚本来自行执行此操作 但这可能会失败 而且我不想编辑图像
  • GridView 分页 - 第一个、最后一个、下一个、上一个

    是否可以添加 GridView 分页的 第一个 最后一个 下一个 上一个 选项 我似乎无法弄清楚 我能得到的只是数字 gt gt 代表最后一个 设置 PagerSettings 部分的 PageText 属性的值
  • 不可分配给编辑器中“Expected>”类型的参数

    我的测试是从命令行通过的 但是我编辑了typescript来源使用Atom 当我在编辑器中打开其中一个测试文件时 我在这一行看到一个错误 expect pageObject name getText toEqual Some name 这是
  • Sigar 不满意链接错误

    我是西格尔的新手 我想运行一个简单的测试来了解如何监控我的系统 I added sigar 1 6 4 and log4j作为外部库 但是当我运行它时 我遇到以下错误 Exception in thread main java lang U
  • 可停靠的Windows。浮动窗口和主窗口菜单集成

    在 Visual Studio 2010 中 可停靠 Windows 似乎在任何情况下都能按预期工作 如果 浮动 文档处于活动状态并且选择了某些菜单 例如 编辑 gt 粘贴 则 浮动 文档仍然具有焦点 并且将针对该 浮动 窗口执行该命令 另
  • 我如何循环遍历 OracleDataReader 的所有列

    我有以下代码 我想循环遍历此查询结果中的所有字段并填充名为 field 的字典 给定一个数据读取器 这可能吗 OracleCommand command connection CreateCommand string sql Select
  • 如何将 Nifti 文件转换为 Numpy 数组?

    我的 Nifti 文件 ii gz 中有 3D 数组 我想将其保存为 3D numpy 数组 我使用 Nibabel 将 Numpy 转换为 Nifti1 我可以反其道而行之吗 From nipy import numpy as np im
  • 为什么 StyleCop 建议在方法或属性调用前加上“this”前缀?

    我一直在尝试遵循 StyleCop 的项目指南 看看最终生成的代码是否更好 大多数规则都是合理的 或者是关于编码标准的意见问题 但有一条规则令我困惑 因为我没有看到其他人推荐它 而且因为我没有看到它有明显的好处 SA1101 对 方法或属性