summaryrefslogtreecommitdiffstats
path: root/2022-2/L08/mitsuo/LAB08_PREG01/Medico.cpp
blob: 4b6878148657eae451b02c29df2a068c1c630bc6 (plain)
1
2
3
4
5
6
7
8
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
47
48
49
50
/* 
 * File:   Medico.cpp
 * Author: mitsuo
 * 
 * Created on 27 November 2022, 11:46
 */

#include <iomanip>
#include <iostream>
#include "Medico.h"
#include "aux.h"

using namespace std;

Medico::Medico() {
    this->codigo = -1;
    this->especialidad = new char [MAXLEN];
    this->nombre = new char [MAXLEN];
}

Medico::Medico(const Medico& orig) {
}

Medico::~Medico() {
    delete [] this->especialidad;
    delete [] this->nombre;
}

char* Medico::getEspecialidad() const {
    return especialidad;
}

int Medico::getCodigo() const {
    return codigo;
}

int Medico::read(std::istream & input) {
    char c;
    
    input >> this->codigo >> c;
    input.getline(this->nombre, MAXLEN, ',');
    input.getline(this->especialidad, MAXLEN, '\n');
    return !input.eof();
}

void Medico::write(std::ostream & output) {
    output << WL(8) << this->codigo;
    output << WL(16) << this->especialidad;
}