corso ASD
Corso di Algoritmi e Strutture Dati a.a. 2014/2015

Esercizio 02

Passaggio da struct a class

Esercizio: partendo dall'esempio visto in aula creare una classe Orario che contenga ore, minuti e secondi e che protegga questi dati da modifiche accidentali.
Testare la classe con casi limite.

//
//  main.cpp
//  asdbr_codice_in_aula
//
//  Created by Paolo on 07/10/14.
//  Copyright (c) 2014 dib. All rights reserved.
//
#include 
using namespace std;

struct orologio_s {
    int ora;
    int minuto;
    int secondo;
};

class orologio_c {
private:
    int _ora;
public:
    int ora(){
        return _ora;
    }
    void setOra(int o){
        if((o>0) && (o<=24)){
            _ora=o;
        }
    }
    int minuto;
    int secondo;
};

void stampaOra(orologio_s o){
    cout <<"sono le: "
    << o.ora << ":" << o.minuto << endl;
}
void stampaOra(orologio_c o){
    cout <<"sono le: "
    << o.ora() << ":" << o.minuto << endl;
}

int main(int argc, const char * argv[]) {
    orologio_s orologio;
    orologio.minuto = 12;
    orologio.ora = 15;
    orologio.secondo = 00;

    orologio_c orologio_classe;
    orologio_classe.minuto = 12;
    orologio_classe.setOra(15);
    orologio_classe.secondo = 00;
    
    stampaOra(orologio);
    orologio.ora = 35;
    stampaOra(orologio);
    orologio_classe.setOra(35);
    stampaOra(orologio_classe);

    return 0;
}

 

corso ASD