C++/Clases
C++ | ||
Clases |
As clases son a peza fundamental sobre a que se cimenta a programación orientada a obxectos.
As clases definen tipos de datos, compostas por unha serie de estados (variables), así como unha serie de operacións (funcións) para traballar con eses estados.
Herdanza
[editar]A herdanza é a relación entre dúas clases na que unha é “un tipo de” outra, como «Tranvía» pode ser un tipo de «Vehículo».
Herdanza pública
[editar]A sintaxe da herdanza pública é a seguinte:
class Tranvia : public Vehiculo {
public:
// [...]
};
Clases base
[editar]As clases base son as clases das que as súas clases derivadas son “un tipo de”.
Clases base abstractas
[editar]As clases base abstractas empréganse en C++ para separar a interface da aplicación. Consisten en clases que teñen unha ou máis funcións membro puramente virtuais. Por tanto, non se pode crear unha instancia deste tipo de clases.
Punteiros a clases base ou derivadas
[editar]As funcións que traballan con punteiros a clases base poden traballar tamén con punteiros ás súas clases derivadas:
void funcion1(Vehiculo* vehiculo);
void funcion2(Tranvia* tranvia) { funcion1(tranvia); } // Este liña de código é completamente segura.
Niveis de acceso
[editar]- Aos membros (datos ou funcións) declarados na sección
private
dunha clase só poden acceder as funcións membro da clase e amigos.
- Aos membros (datos ou funcións) declarados na sección
protected
dunha clase só poden acceder as funcións membro da clase e amigos, así como as funcións membro e amigos das clases derivadas.
- Aos membros (datos ou funcións) declarados na sección
public
dunha clase pode acceder calquera.
C++ | ||
Clases |