在引用当前实例成员时,是否有办法在Visual Studio中强制使用此关键字?
- class MyClass
- {
- public object Foo { get; set; }
- public MyClass(object foo)
- {
- Foo = Foo; // this should of course be lowercase but it's easy to miss
- }
- }
此代码可能会在以后的某个时间产生臭名昭着的“对象引用未设置为对象的实例”异常.
如何使它工作但仍然很容易错过:
- class MyClass
- {
- public object Foo { get; set; }
- public MyClass(object foo)
- {
- Foo = foo; // Valid Syntax but unclear.
- }
- }
这是有效的语法,但很容易错过.
我想要视觉工作室执行的语法:
- class MyClass
- {
- public object Foo { get; set; }
- public MyClass(object foo)
- {
- this.Foo = foo; // this is "safe".
- }
- }
如果这个约定被强制执行,我将不得不输入this.Foo = this.Foo来创建与第一个例子中相同类型的错误.
我总是使用这个关键字,因为它使我的生活更容易,而在c#和其他语言之间切换,所以根本不会有任何缺点.