Articles of pass by value

Sobrecarga de función basada en el valor frente a la referencia de Const

¿Declar algo como el siguiente void foo(int x) { std::cout << "foo(int)" << std::endl; } void foo(const int &x) { std::cout << "foo(const int &)" << std::endl; } alguna vez tiene sentido? ¿Cómo podría la persona que llama ser capaz de diferenciar entre ellos? He intentado foo(9); // Compiler complains ambiguous call. int x = […]

¿Dónde debería preferir pasar por referencia o pasar por valor?

¿En qué circunstancias debería preferir pasar por referencia? ¿Pasa por valor?

C ++ – pasa referencias a std :: shared_ptr o boost :: shared_ptr

Si tengo una función que necesita trabajar con un shared_ptr , ¿no sería más eficiente pasarle una referencia (para evitar copiar el objeto shared_ptr )? ¿Cuáles son los posibles efectos secundarios malos? Imagino dos posibles casos: 1) dentro de la función se hace una copia del argumento, como en ClassA::take_copy_of_sp(boost::shared_ptr &sp) { … m_sp_member=sp; //This […]

Java, paso por valor, variables de referencia

Tengo un problema con la comprensión de la acción de “paso por valor” de Java en el siguiente ejemplo: public class Numbers { static int[] s_ccc = {7}; static int[] t_ccc = {7}; public static void calculate(int[] b, int[] c) { System.out.println(“s_ccc[0] = ” + s_ccc[0]); // 7 System.out.println(“t_ccc[0] = ” + t_ccc[0]); // 7 […]

Pasar una matriz a una función por valor

A continuación se muestra un fragmento del libro C Progtwigción Solo las preguntas frecuentes . ¿No está mal, ya que las matrices nunca se pueden pasar por referencia? VIII.6: ¿Cómo se puede pasar una matriz a una función por valor? Respuesta: Una matriz se puede pasar a una función por valor al declarar en la […]

Pasando una cadena por referencia en Java?

Estoy acostumbrado a hacer lo siguiente en C : void main() { String zText = “”; fillString(zText); printf(zText); } void fillString(String zText) { zText += “foo”; } Y la salida es: foo Sin embargo, en Java, esto no parece funcionar. Supongo que porque el objeto String se copia en lugar de pasar por referencia . […]

Pasar por referencia o pasar por valor?

Al aprender un nuevo lenguaje de progtwigción, uno de los posibles obstáculos que puede encontrar es la cuestión de si el idioma es, por defecto, pass-by-value o pass-by-reference . Así que esta es mi pregunta para todos ustedes, en su idioma favorito, ¿cómo se hace realmente? ¿Y cuáles son los posibles escollos ? Tu lenguaje […]

¿Está pasando el argumento del puntero, pasa por el valor en C ++?

¿Está pasando el argumento del puntero, pasa por el valor en C ++? Como veo que cualquier cambio en el puntero como tal no se refleja fuera del método. Sin embargo, se reflejan los cambios que hago desreferenciando el puntero. En ese caso, ¿es aceptable / procedimiento estándar usar puntero a puntero como argumento para […]

¿Cuál es el uso de “ref” para las variables de tipo de referencia en C #?

Entiendo que si paso un valor-tipo ( int , struct , etc.) como parámetro (sin la palabra clave ref ), se pasa una copia de esa variable al método, pero si uso la palabra clave ref una referencia a esa se pasa la variable, no una nueva. Pero con tipos de referencia, como clases, incluso […]

¿Por qué debería usar la palabra clave “final” en un parámetro de método en Java?

No puedo entender dónde está realmente útil la palabra clave final cuando se usa en los parámetros del método. Si excluimos el uso de clases anónimas, la legibilidad y la statement de intenciones, entonces parece casi inútil para mí. Hacer cumplir que algunos datos permanecen constantes no es tan fuerte como parece. Si el parámetro […]