Вопрос

Я считаю, что DataGridView пожирают память.Лучше ли передавать datagridview по значению или по ссылке?Стоит ли его вообще принимать?

Это было полезно?

Решение

Передача его по значению или ссылке не будет иметь значения с точки зрения памяти, поскольку DataGridView является ссылочным типом, а не типом значения.

Другие советы

Тип DataGridView является ссылочным типом, поэтому невозможно передать объект по стоимости.Вы можете пройти ссылка к объекту по значению, но это очень маленькое значение (обычно размером с указатель).

Чтобы добавить к ответу Джозефа: все, что передается по значению, — это создать новую переменную в стеке вызовов в кадре стека вызываемых методов и скопировать адрес (в куче) объекта DataGridView в эту переменную для использования вызываемым методом. .Все это предотвращает присвоение вызываемым методом адреса нового объекта DataGridView переменной в звонящий (метод вызова) и, таким образом, изменяя который dataGridView, на который будет указывать вызывающий объект.

  1. Вам не придется (нужно) сдавать какой-либо контроль очень часто.
  2. Вы вообще не можете передать сам объект.
  3. Вы можете передать ссылку на объект только по значению (по умолчанию) или по ссылке (параметр ref) не влияет на использование памяти.Это дизайнерское решение, но обычно, особенно для элементов управления, вы передаете ссылку по значению.
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top