Autor
|
Tema: Como sobre-escribir un método de una clase base en una clase heredada? (Leído 3,872 veces)
|
julian21931500
Desconectado
Mensajes: 8
|
El enunciado del ejercicio me dice esto: Cree una clase ListaOrdenada, que herede de la clase Lista y sobrescriba la operación insertar para que inserte un elemento de manera ordenada en la ListaOrdenada. Para probarla, realice un programa en C++ que lea una entrada de n números enteros e imprima la secuencia de listas generadas al insertar cada número.
Tengo la clase lista en lista.h y estoy creando la clase ListaOrdenada que hereda de lista en otro .h que se llama ListaOrdenada.h
la herencia me funciona bien hasta el momento de que intento sobre-escribir el método insertar, el método insertar de lista.h es así: void insertar(Elemento e, int pos) si quiero hacer que el insertar en mi nueva clase sea con un solo paŕametro, así: void insertar(Elemento e) como hago? porque me dicen es que sobre-escriba el método insertar de " lista " para que inserte ordenada no que cree un nuevo método, ¿como sería la forma de hacerla clase ListaOrdenada para sobre-escribir el método insertar? espero y me puedan ayudar. Gracias!
|
|
|
En línea
|
|
|
|
ivancea96
Desconectado
Mensajes: 3.412
ASMático
|
La forma más sencilla es esa que dices. ¿Seguro que no valdría?
|
|
|
En línea
|
|
|
|
julian21931500
Desconectado
Mensajes: 8
|
El compilar me dice que ya está re-definido ese método en la clase "lista" claro que es obvio y eso es lo que quiero hacer pero no se porque no me deja hacerlo. podrías dejarme un ejemplo de como sería la redefinición de un método de una clase heredada? (cambiando parámetros y la estructura del código).
|
|
|
En línea
|
|
|
|
ivancea96
Desconectado
Mensajes: 3.412
ASMático
|
#include <iostream> using namespace std; class A{ void t(){ cout << 'a'; } }; class B:public A{ public: void t(int n){ cout << n; } }; int main(){ B b; b.t(5); }
|
|
|
En línea
|
|
|
|
julian21931500
Desconectado
Mensajes: 8
|
Muy buen aporte hermano, lo que sucede es que yo hago los .h por separado, me explico: Tengo el Lista.h y el ListaOrdenada.h separados, tu lo haces todo en un mismo.h esto influye?
|
|
|
En línea
|
|
|
|
ivancea96
Desconectado
Mensajes: 3.412
ASMático
|
Prueba, o en su defecto, pon aquí los fragmentos de códigos y el error.
|
|
|
En línea
|
|
|
|
|
Mensajes similares |
|
Asunto |
Iniciado por |
Respuestas |
Vistas |
Último mensaje |
|
|
Acceso método de clase base/madre
Programación C/C++
|
julianbesso1
|
3
|
3,195
|
1 Septiembre 2014, 12:59 pm
por eferion
|
|
|
Se ejecuta el método virtual de la clase base y no la heradada
Programación C/C++
|
CSQCasimiro
|
0
|
1,716
|
22 Octubre 2014, 02:10 am
por CSQCasimiro
|
|
|
Objeto de clase heredada en super clase
Java
|
Baal_30
|
2
|
2,079
|
18 Mayo 2015, 22:21 pm
por Baal_30
|
|
|
(JS y PHP) no puedo ejecutar metodo de clase JS atraves de metodo de clase PHP
PHP
|
noob2012
|
2
|
3,674
|
7 Enero 2017, 22:27 pm
por noob2012
|
|
|
Como Colocar una clase en un archivo separado para fines de reutilización
Programación C/C++
|
brianR
|
1
|
4,127
|
6 Julio 2018, 16:08 pm
por ThunderCls
|
|