En la función "void reg_pro(propietario registro)" estás pasando una estructura que modificas en la función, sin embargo, cuando tu pasas una estructura como parámetro, lo que pasas es una copia, es decir, se copian todos los datos de la estructura para cada llamada de la función. Para modificar un parámetro, tienes que pasar la estructura por referencia, es decir, tendrías que modificar la función por "void reg_pro(propietario ®istro)". Lo que haces al añadir un & es decirle al compilador que el parámetro registro se refiere al objeto que pasas como parámetro, vamos, que los cambios que hagas a la estructura de la función, se los harás en realidad al valor que hayas pasado como parámetro.
Si quieres indagar más sobre las referencias en C++, te aconsejo que te mires estos links:
http://c.conclase.net/curso/?cap=015
http://www.minidosis.org/#/actividades/Cpp.PunterosYReferencias.Referencias.vid
Espero que se haya entendido
Si quieres indagar más sobre las referencias en C++, te aconsejo que te mires estos links:
http://c.conclase.net/curso/?cap=015
http://www.minidosis.org/#/actividades/Cpp.PunterosYReferencias.Referencias.vid
Espero que se haya entendido
