Pregunta

Pienso en DataGridView de cerdos como de memoria. ¿Es mejor que pasar por valor de un DataGridView o por referencia? En caso de que incluso puede pasar a todos?

¿Fue útil?

Solución

Al pasar por valor o referencia no se va a importar desde un punto de memoria, porque el DataGridView es un tipo de referencia, no es un tipo de valor.

Otros consejos

El tipo DataGridView es un tipo de referencia y por lo tanto no es posible pasar la objeto por valor. Puede pasar el referencia para el objeto de valor, sino que es una muy pequeña (típicamente puntero de tamaño) de valor.

Para añadir a la respuesta de José, Todo pasa por valor hace es crear una nueva variable en la pila de llamadas en los llamados métodos marco de pila, y copiar la dirección (en el montón) del objeto DataGridView en esa variable para su uso por el llamado método. Todo esto hace es evitar que el método llamado de asignación de dirección de una nueva del objeto DataGridView a la variable en el persona que llama (método de llamada), y por lo tanto el cambio de que dataGridView la persona que llama estará apuntando a.

  1. No (hay que) pasan ningún control muy a menudo
  2. No se puede pasar el objeto mismo en absoluto.
  3. Sólo se puede pasar la referencia a un objeto, y hacerlo por el valor (el valor predeterminado) o por referencia (ref parámetro) no tiene impacto en el uso de memoria. Es una decisión de diseño, pero por lo general, sin duda para los controles, se pasa a la referencia por valor.
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top