C# 如何从自动实现属性中的字段访问dispose方法
为什么我可以在Bmw getter setter方法中访问dispose方法,而不能在dispose方法中访问 那么如何处理以下字段:C# 如何从自动实现属性中的字段访问dispose方法,c#,.net,memory,.net-4.0,C#,.net,Memory,.net 4.0,为什么我可以在Bmw getter setter方法中访问dispose方法,而不能在dispose方法中访问 那么如何处理以下字段: Class Car: IDisposable { private FontWeight bmw; public FontWeight Bmw { bmw.Dispose(); <<<<<<<< Can access Dis
Class Car: IDisposable
{
private FontWeight bmw;
public FontWeight Bmw
{
bmw.Dispose(); <<<<<<<< Can access Dispose
get
{ return bmw; }
set
{ bmw= value;
}
public void Dispose(){
bmw.Dispose(); <<<< Cant access Dispose()
}
}
}
如果这是您的代码,那么您的代码中就会出现大量语法错误:
public FontWeight Bmw
{
/// here shouldn't be any code, just getters and setters
get { return bmw; }
set { bmw = value; }
/// you forgot to close the property here
} /// now it's closed
public void Dispose()
{
bmw.Dispose(); /// now it will work
}
这会导致无限循环吗?在同一方法中调用同一方法。您发布的代码在许多方面无效。您试图在属性内声明Dispose方法,并且在getter和setter之外的属性内调用Dispose方法-@Xikinho90-不,这不是无限循环,因为他只是想调用变量Dispose,我很清楚我只需要访问public void Dispose中的Dispose方法就可以处理bmw。但是它不会与属性方法中出现的dispose方法形成对比。这个答案破坏了我首先发布问题的原因,因为它指出了我指定的问题。FontWeight是一个windowsclass@user2708073,不清楚您希望如何使用dispose。还有,为什么要在对象内部处理对象?。