// AlunoBach.cpp: implementation of the CAlunoBach class.
//
//////////////////////////////////////////////////////////////////////

#include <iostream.h>
#include <string.h>
#include <stdlib.h>

#include "generic.h"
#include "AlunoBach.h"

//////////////////////////////////////////////////////////////////////
// Construction/Destruction
//////////////////////////////////////////////////////////////////////

CAlunoBach::CAlunoBach()
{

}

CAlunoBach::~CAlunoBach()
{

}

CAlunoBach::CAlunoBach(const CAlunoBach &a):CAluno(a)
{
	Copia(a);
}

void CAlunoBach::Copia(const CAlunoBach &a)
{
	m_cRegime = a.m_cRegime;
}

void CAlunoBach::Apresenta() const
{
	CAluno::Apresenta();

	cout << "Regime: " << m_cRegime << endl;
}

void CAlunoBach::Leitura()
{
	CAluno::Leitura();

	do
	{
		cout << "Regime (D/N): ";
		cin >> m_cRegime;
	}
	while( toupper(m_cRegime) != 'N' && toupper(m_cRegime) != 'D' );
}

CAluno* CAlunoBach::Duplicar() const
{
	CAlunoBach *pAux = new CAlunoBach(*this);

	return (CAluno*)pAux;
}

CAlunoBach& CAlunoBach::operator =(const CAlunoBach &a)
{
	Copia(a);

	return *this;
}

