【发布时间】:2010-12-17 12:42:45
【问题描述】:
我认为 DataGridView 会占用内存。通过值传递datagridview还是通过引用更好?它甚至应该通过吗?
【问题讨论】:
标签: c# datagridview pass-by-reference pass-by-value
我认为 DataGridView 会占用内存。通过值传递datagridview还是通过引用更好?它甚至应该通过吗?
【问题讨论】:
标签: c# datagridview pass-by-reference pass-by-value
从内存的角度来看,通过值或引用传递它并不重要,因为 DataGridView 是引用类型,而不是值类型。
【讨论】:
DataGridView 类型是一个引用类型,因此不可能通过值传递 object。您可以通过值将 reference 传递给对象,但这是一个非常小的(通常是指针大小的)值。
【讨论】:
添加到约瑟夫的答案中,所有通过值传递它都是在调用方法堆栈框架中的调用堆栈上创建一个新变量,并将 DataGridView 对象的地址(在堆中)复制到该变量中以供使用被调用的方法。这一切都是为了防止被调用的方法将新的 DataGridView 对象的地址分配给 caller(调用方法)中的变量,从而改变 which 调用者将指向的 dataGridView。
【讨论】:
【讨论】: