Discussione: Ereditarietà C++
View Single Post
Old 25-04-2013, 22:43   #1
mason89
Member
 
Iscritto dal: Dec 2009
Messaggi: 47
Ereditarietà C++

Ciao a tutti..ho un piccolo dubbio con l'ereditarietà in c++..
In pratica credo la classe Persona(classe base) e la classe Studente(derivata);
Se faccio l'ereditarietà public tutto ok, ma provando quella protected,non mi fa accedere ai metodi protected della classe base.Come mai?I dati protected nella classe base rimangono tali anche nella derivata,quindi come mai non riesco?Posto il codice della classe Persona.h
Mi affido a voi grazie.

Codice:
#ifndef PERSONA_H_
#define PERSONA_H_

#include<iostream>
using namespace std;



class Persona
{
public:
	Persona(string,string,int);
	Persona(string,string,int,int);

	void setNome(string);
	void setCognome(string);
	void setData(int);


	string getNome()const;
	string getCognome()const;
	int getDataDiNascita()const;

protected:
	int getCodiceFiscale(); // Spostato a protected per farlo ereditare con Ereditarietà protected!

	string nome;
	string cognome;
	unsigned dataDiNascita;
	int codiceFiscale;

private:
	void setCodiceFiscale(int);

};

#endif
mason89 è offline   Rispondi citando il messaggio o parte di esso