escribí una función a lo largo de las líneas de esto:¿Qué significa `* &` en una declaración de función?
void myFunc(myStruct *&out) {
out = new myStruct;
out->field1 = 1;
out->field2 = 2;
}
Ahora, en una función que llama, podría escribir algo como esto:
myStruct *data;
myFunc(data);
que llenará todos los ámbitos en los data
. Si omito el '&
' en la declaración, esto no funcionará. (O más bien, funcionará solo localmente en la función, pero no cambiará nada en la persona que llama)
¿Podría alguien explicarme qué hace realmente este '*&
'? Se ve raro y no puedo darle mucho sentido.
Es sintaxis C++, no C – qrdl