C# 在私有函数中填充全局数据表?
我在我的代码(C#)中发现了一些奇怪的东西。 我可以从一个公共的空白处填充一个数据表。 举个例子,我用与私有函数中公共void中的数据表相同的名称调用私有函数,在私有void中,数据表的名称与公共部分中的名称相同,这只是填充了公共void,而私有函数中没有返回命令,这怎么可能呢 我的代码:C# 在私有函数中填充全局数据表?,c#,datatable,C#,Datatable,我在我的代码(C#)中发现了一些奇怪的东西。 我可以从一个公共的空白处填充一个数据表。 举个例子,我用与私有函数中公共void中的数据表相同的名称调用私有函数,在私有void中,数据表的名称与公共部分中的名称相同,这只是填充了公共void,而私有函数中没有返回命令,这怎么可能呢 我的代码: public void start() { DataTable deliveryLines = new DataTable(); Orders(deliveryLines); // Pri
public void start()
{
DataTable deliveryLines = new DataTable();
Orders(deliveryLines); // Private function
//And here, deliveryLines containts the information from the private void.
}
private void Orders(DataTable deliveryLines)
{
////Getting Filled blablabla
}
DataTable
是一种引用类型。引用类型的变量存储对其数据的引用。如果将这样的变量传递给另一个方法,则只复制引用本身,而不复制它所指向的对象
在方法start()
中的代码变量deliveryLines
和方法Orders(DataTable)中的参数变量deliveryLines
指向相同的内存位置
见:
请提供一份报告,让我们了解您的问题哇,这令人难以置信地困惑!一定要一个密码。可能也值得一读:标记为未明确关闭。public void start(){DataTable deliveryLines=new DataTable();Orders(deliveryLines);//Private function//这里,deliveryLines包含来自Private void的信息。}Private void Orders(DataTable deliveryLines){///Getting Filled bla}使用按钮更新您的问题