“Conocimiento Problema>Convertir archivos

¿Enviar por copia y enviar referencia?

2013/1/16
En programación orientada a objetos, "pasar por copia" y "pasar por referencia" se refieren a diferentes formas de pasar argumentos a funciones o métodos. Sin embargo, la terminología varía según el idioma y el contexto.

Pasar por copia:

- Argumentos pasados ​​como copias: En el paso por copia, se crea una copia del argumento real y se pasa a la función. Cualquier modificación realizada a esta copia dentro de la función no afecta la variable original fuera de la función.

- Tipos de valores: El paso por copia se usa comúnmente con tipos de valor, que son tipos de datos que contienen su valor directamente. Por ejemplo, en C++ o Java, int, double, boolean, etc. son tipos de valores.

Pasar por Referencia:

- Argumentos como referencias: Al pasar por referencia, se pasa a la función una referencia al argumento real. Cualquier cambio realizado en el argumento dentro de la función se refleja directamente en la variable original fuera de la función.

- Tipos de referencia: El paso por referencia se utiliza a menudo con tipos de referencia, que son tipos de datos que contienen una referencia a una ubicación de memoria donde se almacenan los datos reales. Por ejemplo, en C++ y Java, los objetos (instancias de clases) son tipos de referencia.

En algunos idiomas, el comportamiento se puede controlar explícitamente utilizando palabras clave como "pasar por referencia" o "&" (para parámetros de referencia) y "pasar por valor" o "*" (para parámetros de valor).

Por ejemplo, en C++:

```cpp

incremento vacío (valor int) { // pasar por valor

valor++; // modifica la copia

}

void incrementRef(int &value) { // pasar por referencia

valor++; // modifica la variable original

}

int principal() {

entero x =5; // tipo de valor

incremento(x); // x sigue siendo 5

incrementoRef(x); // x se convierte en 6

}

```

En Java:

```java

incremento de vacío público (valor int) { // pasar por valor

valor++; // modifica la copia

}

public void incrementRef(int &value) { // pasar por referencia

valor++; // modifica la variable original

}

público estático vacío principal (String [] argumentos) {

entero x =5; // tipo de valor primitivo

incremento(x); // x sigue siendo 5

incrementoRef(x); // x se convierte en 6

}

```

En Python, los argumentos siempre se pasan por referencia. Sin embargo, Python utiliza un mecanismo de recuento de referencias para gestionar la vida útil del objeto y puede crear copias que sean independientes del recuento de referencias del objeto original.

Comprender el paso por copia y el paso por referencia ayuda a administrar la memoria de manera eficiente, evitando modificaciones no deseadas y garantizando el comportamiento adecuado de las funciones/métodos que operan con argumentos.

Convertir archivos
Cómo convertir un archivo DCF a un MP3
Cómo convertir un documento XPS
¿Cómo se hacen carpetas en deviantart?
Cómo convertir a 3GP a un DVD MPEG
Cómo convertir ASF a MP3
¿Cómo se convierte JPEG en DOCX?
¿Cómo se convierte un archivo pdf en doc y se edita?
Cómo convertir AMR a WAV gratis
Conocimiento de la computadora © http://www.ordenador.online