C# 是否可以通过合并类来缩短呼叫线路?
我正在为数据编写视图类,我将调用数据类中的多个方法,所以我想通过删除数据类的名称来缩短调用行,只编写方法和字段,就像它们是视图类的一部分一样C# 是否可以通过合并类来缩短呼叫线路?,c#,unity3d,C#,Unity3d,我正在为数据编写视图类,我将调用数据类中的多个方法,所以我想通过删除数据类的名称来缩短调用行,只编写方法和字段,就像它们是视图类的一部分一样 公共类数据 { 公共国际领域1; 公共字符串字段2; public void ClearData() { 字段1=0; 字段2=“”; } } 公共班机 { 公共图书馆{ var data=DataLoader.LoadData();//从其他地方加载数据 using(data)//这在c#中不起作用,我使用编写是因为我希望它能像这样工作 { Consol
公共类数据
{
公共国际领域1;
公共字符串字段2;
public void ClearData()
{
字段1=0;
字段2=“”;
}
}
公共班机
{
公共图书馆{
var data=DataLoader.LoadData();//从其他地方加载数据
using(data)//这在c#中不起作用,我使用编写是因为我希望它能像这样工作
{
Console.WriteLine(field1.ToString());//通过只写入field1来访问data.field1,因为此代码行在使用(数据)区域内
Console.WriteLine(field2);//通过只写入field2来访问data.field2,因为此代码线位于using(data)区域内
ClearData();//通过只写入ClearData()来访问data.ClearData方法,因为此代码行位于使用(数据)区域内
}
}
有可能用c写这样的东西吗
另外,我知道这是很难理解的糟糕代码,但我想知道有没有可能做到这一点。不,你不能这样做
field1.ToString()
如果不指定“field1”、“field2”等所在的对象,编译器无法知道它们是什么
using (data)
不像在其他一些语言中那样,它说“将此对象用于所有字段引用”,然后编译器从中计算出来
你会写这样的东西
using (var data = DataLoader.LoadData())
{
Console.WriteLine(data.field1.ToString());
Console.WriteLine(data.field2);
ClearData(); **<<< nothing like this exists**
}
使用(var data=DataLoader.LoadData())
{
Console.WriteLine(data.field1.ToString());
控制台写入线(数据字段2);
ClearData();**不,它不是。您只能使用..为静态
方法/字段执行此操作。但这似乎不是您所追求的…还请注意,仅用作类型实例周围的“安全”包装器..我知道,这可能只是一个示例,但可以肯定;)