tengo una clase cuenta
class Cuenta
{
protected:
std::string cedula, numeroCuenta;
int saldo;
public:
Cuenta(std::string ced = "",std::string numCta = "",int sal = 0);
void setCedula(std::string ced); //los set establecen el valor de la variable
void setNumeroCuenta(std::string numCta);
void setSaldo(int sal);
std::string getCedula(); //los get consultan el valor de la variable
std::string getNumeroCuenta();
int getSaldo();
bool seLlama (std::string ced); //comparador
bool operator < (const Cuenta &C) const; //ordenador
virtual int intereses()=0;
};
#include "cuenta.h"
Cuenta::Cuenta(std::string ced, std::string numCta, int sal)
{
cedula = ced;
numeroCuenta = numCta;
saldo = sal;
}
void Cuenta::setCedula(std::string ced)
{
cedula = ced;
}
void Cuenta::setNumeroCuenta(std::string numCta)
{
numeroCuenta = numCta;
}
void Cuenta::setSaldo(int sal)
{
saldo = sal;
}
std::string Cuenta:: getCedula()
{
return cedula;
}
std::string Cuenta:: getNumeroCuenta()
{
return numeroCuenta;
}
int Cuenta::getSaldo()
{
return saldo;
}
bool Cuenta::seLlama (std::string ced)
{
return cedula == ced;
}
bool Cuenta::operator < (const Cuenta &c) const
{
return (cedula < c.cedula);
}
esta clase se usa como super clase para la clase ahorros
class Ahorros : public Cuenta
{
private:
int montoBase;
public:
Ahorros(std::string ced = "",std::string numCta = "",int saldo = 0);
bool validarTransaccion(int saldoR);
int intereses(int saldo);
};
#include "ahorros.h"
Ahorros::Ahorros(std::string ced, std::string numCta, int saldo) : Cuenta(ced, numCta, saldo)
{
montoBase = 20000;
}
bool Ahorros::validarTransaccion(int saldoR)
{
return (saldoR-montoBase)>=0;
}
int Ahorros::intereses(int saldoR)
{
floor(saldoR*1.4);
}
la informacion de el constructor la debo guardar en un vetor de la clase lista
class ListaAhorros
{
private:
char cambio[15];
bool orden;
std::vector<Ahorros> listaAhorros;
public:
ListaAhorros();
~ListaAhorros();
void agregar[glow=red,2,300](Ahorros a)[/glow];
std::string consultar(std::string ced);
std::string consultarCuenta(std::string ced);
void modificar(std::string ced, std::string ced1, std::string numCta, int montB);
void eliminar(std::string ced);
void ordenar();
void listadoAhorros();
};
#endif
en este momento me genera un error al compilar
su respectiva implementacion es esta
#include "listaAhorros.h"
using namespace std;
ListaAhorros::ListaAhorros()
{
string linea, ced, numCta;
int saldo;
ifstream entrada("ActaAhorros.txt");
if(entrada){
while(getline(entrada, linea))
{
ced = linea;
getline(entrada, linea);
numCta = linea;
getline(entrada, linea);
saldo = atoi(linea.c_str());
agregar(Ahorros(ced, numCta, saldo));
}
}
orden=false;
entrada.close();
}
ListaAhorros::~ListaAhorros()
{
ofstream salida("ActaAhorros.txt");
vector<Ahorros>::iterator cual;
for(cual=listaAhorros.begin();cual!=listaAhorros.end();cual++)
{
salida << cual->getCedula() << endl;
salida << cual->getNumeroCuenta() << endl;
salida << cual->getSaldo() << endl;
}
salida.close();
}
void ListaAhorros::agregar(Ahorros a)
{
listaAhorros.insert(listaAhorros.end(), a);
}
std::string ListaAhorros::consultar(std::string ced)
{
vector<Ahorros>::iterator cual;
for(cual=listaAhorros.begin();cual!=listaAhorros.end();cual++)
if(cual->seLlama(ced)){
cout << "numero de cuenta: " << cual->getNumeroCuenta();
cout << "\nmonto base: " << cual->getSaldo();
return itoa(cual->getSaldo(),cambio,10);
}
else
return "";
}
std::string ListaAhorros::consultarCuenta(std::string ced)
{
vector<Ahorros>::iterator cual;
for(cual=listaAhorros.begin();cual!=listaAhorros.end();cual++)
cout<<"llega";cin.get();
if(cual->seLlama(ced)){
cout<<"no llega";cin.get();
return cual->getNumeroCuenta();}
}
void ListaAhorros::modificar(std::string ced, std::string ced1, std::string numCta, int montB)
{
vector<Ahorros>::iterator cual;
for(cual=listaAhorros.begin();cual!=listaAhorros.end();cual++)
if(cual->seLlama(ced))
{
cual->setCedula(ced1);
cual->setNumeroCuenta(numCta);
cual->setSaldo(montB);
break;
}
}
void ListaAhorros::eliminar(std::string ced)
{
vector<Ahorros>::iterator cual;
for(cual=listaAhorros.begin();cual!=listaAhorros.end();cual++)
if(cual->seLlama(ced))
{
listaAhorros.erase(cual);
break;
}
}
void ListaAhorros::ordenar()
{
if(!orden)
sort(listaAhorros.begin(),listaAhorros.end());
orden=true;
}
void ListaAhorros::listadoAhorros()
{
ordenar();
vector<Ahorros>::iterator cual;
cout << "LISTADO DE LA LIBRETA DE CLIENTES" << endl;
cout << " CEDULA NUMERO_DE_CUENTA MONTO_BASE" << endl;
for(cual=listaAhorros.begin();cual!=listaAhorros.end();cual++)
cout <<" "<< cual->getCedula()<<" "<< cual->getNumeroCuenta() << " " << cual->getSaldo()<< endl;
}
y esta es su implementacion
Escribe la linea en donde el compilador se queja, y detalles que el compilador muestra sobre el error :)