Newer
Older

Debora
committed
#include "veterinario.h"
#include <iostream>
#include <string>
using namespace std;
#include <fstream>
#define CARACTER_SEPARADOR ';'

Debora
committed
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
/**
* @brief Metodo de Sobrecarga do operador extração
* @param input - stream de entrada, v = objeto do tipo Veterinario
*/
std::istream& operator>> (std::istream &input,Veterinario &v){
string aux;
getline (input,aux,CARACTER_SEPARADOR);
v.id = atoi(aux.c_str());
getline (input,aux,CARACTER_SEPARADOR);
v.funcao = aux;
getline (input,aux,CARACTER_SEPARADOR);
v.nome = aux;
getline (input,aux,CARACTER_SEPARADOR);
v.cpf = aux;
getline (input,aux,CARACTER_SEPARADOR);
v.idade = atoi(aux.c_str());
getline (input,aux,CARACTER_SEPARADOR);
v.tipo_sanguineo = aux;
getline (input,aux,CARACTER_SEPARADOR);
v.fator_RH = aux;
getline (input, aux);
v.especialidade = aux;
return input;
}
/**
* @brief Metodo de Sobrecarga do operador inserção
* @param output - stream de entrada, v = objeto do tipo Veterinario
*/
std::ostream& operator<< (std::ostream &output, Veterinario const v) {
output << v.id<<";";
output << v.funcao<<";";
output << v.nome<<";";
output << v.cpf<<";";
output << v.idade<<";";
output << v.tipo_sanguineo<<";";
output << v.fator_RH<<";";
output << v.especialidade<<endl;

Debora
committed
return output;
}
/**
* @brief Construtor cria um Veterinario, que tem Funcionario como classe pai e lhe herda os atributos
* @param identity - ID, role - funçao do tratador, name - nome do tratador, doc_cpf - CPF do tratador,
* age - idade do tratador, blood_type - tipo sanguineo do tratador, rh_factor - fator RH do tratador,
* specialty - especialidade do tratador
*/
Veterinario::Veterinario(int identity, string role, string name, string doc_cpf, short age, char blood_type, char rh_factor, string specialty):
Funcionario(identity, role, name, doc_cpf, age, blood_type, rh_factor, specialty)
{}
//Contrutor com valores default

Debora
committed
Veterinario::Veterinario(){
id = 0;
funcao = "-";
cpf = "-";
nome = "-";
idade = 0;
tipo_sanguineo = '-';
fator_RH = '-';
especialidade = "-";
}