【发布时间】:2013-09-17 21:35:20
【问题描述】:
我有一个复杂的对象类型,我将覆盖“base.ToString()”方法,以便它返回一个字符串属性值。
例如:
class foo
{
public string StringValue{get;set;}
public int SomeOtherValue{ get;set;}
public override ToString()
{
return StringValue;
}
}
所以这让我可以轻松地使用检索 StringValue 属性的值。
有没有一种方法可以覆盖或扩展基本功能,以便我可以使用如下简单代码来设置 StringValue 属性?
foo aFoo = new foo();
aFoo = "Some string value";
【问题讨论】:
-
aFoo.StringValue = "Some string value";真的那个很难打字吗? ;-) -
现在我正确阅读了这个问题,我必须同意亚当的观点。 C# 在这里故意不提供支持,因此阅读代码可以清楚地知道到底发生了什么。我们没有从 C++ 中学到任何东西吗?
-
顺便说一句,你的理由是什么?懒惰? (不要误会我的意思,我尊重这一点)还是有意混淆您的开发人员? :-D 说真的,我真的很讨厌各种运算符重载。如果不出意外,“转到定义”不起作用,并且您无法通过查看代码来了解发生了什么。
-
我不认为有办法,但认为我还是会问。我真的很懒惰,因为我有大量遗留代码需要从直接分配更改为现在需要的。
标签: c#