[C con Clase] Duda sobre un programa!!!

fxy_95 fxy_95 en yahoo.com.mx
Jue Mayo 5 22:28:40 CEST 2011


Hola, hoy recurro a ustedes para saber si me pueden ayudar a entender un poco este programa.

Hay solo un par de cosas que no entiendo.

//Cuenta.h
//Definicion de la clase Cuenta con dos constructores

#ifndef _CUENTA_
#define _CUENTA_
#include <cstring>

using namespace std;

class Cuenta
{
   private:
            string nombre;
            unsigned long nr;
            double estado;
   public:
            Cuenta(const string&, unsigned long, double);
            Cuenta(const string&);
            bool init(const string&, unsigned long, double);
            void mostrar();
};
#endif

_______________________________________________________________________________

//Definicion de los constructores
//Con el archivo Cuenta.cpp

Cuenta :: Cuenta(const string&, aNombre, unsigned long aNr, double aEstado)
{
   nr = aNr
   nombre = aNombre;
   estado = aEstado;
}

Cuenta :: Cuenta(const string& aNombre)
{
   nombre = aNombre;
   nr = 1111111;
   estado = 0.0;
}

_______________________________________________________________________________

Mi duda está en las lineas donde se incluye "string&", no entiendo por qué lleva consigo el operador de dirección.

Pienso que cuando pase algo como:

Cuenta primer("Julian", 1236548, 254.3541), segundo("Maria");

Los constructores con la linea "string&" harán referencia al texto que se introduce como argumentos; No estoy seguro de esto,además ¿por qué están como const?

Espero me puedan ayudar.
fxy_95


Más información sobre la lista de distribución Cconclase