Foros del Web » Programación para mayores de 30 ;) » C/C++ »

problemas en herencia multiple

Estas en el tema de problemas en herencia multiple en el foro de C/C++ en Foros del Web. primero que nada hola a todos de nuevo ahce tiempoq ue no venia este foro, tengo casi dos años que no programo nada y lo ...
  #1 (permalink)  
Antiguo 03/05/2009, 15:37
 
Fecha de Ingreso: mayo-2007
Mensajes: 88
Antigüedad: 17 años
Puntos: 0
problemas en herencia multiple

primero que nada hola a todos de nuevo ahce tiempoq ue no venia este foro, tengo casi dos años que no programo nada y lo que antes sabia pues hasta oxidado lo tengo o de atiro no recuerdo, bueno mui problema no es tanto con la herencia multiple en si sino con la declaracion de algunos puntos de un programa ya que de momento la parecer lo tengo lleno de errores, bueno para empezar este seria el codigo

Código:
#include "stdafx.h"
#include <iostream>
#include <stdio.h>
#include <cstdlib>
#include <math.h>


class eleva
{
      public:
             double resul;
             double eleva(double x, double y)
             {
                   resul=x*x + y*y;
                   return resul;
             }
};

class pitagoras
{
      public:
             double resul2;
             double pitagoras(double x, double y)
             {
                    resul2=sqrt((x*x)+(y*y));
                    return resul2;
             }
};

class area
{
      public:
             double resul3;
             double area(double x, double y)
             {
                    resul3=x*y
                    return resul3;
             }
};


class rectangulo : public eleva, public pitagoras, public area
};                 

int _tmain(int argc, _TCHAR* argv[])
{
	rectangulo obj1;
    
    printf("Ingresa la base del rectangulo ");
    scanf("%f", &obj1.x);
    printf("Ingresa la altura del rectangulo ");
    scanf("%f", &obj1.y);
    printf("/nla suma de sus cuadrados es " obj1.eleva(obj1.x,obj1.y));
    printf("/nla por lo que su diagonal es " obj1.pitagoras(obj1.x,obj1.y));
    printf("/nla y su area corresponde a " obj1.area(obj1.x,obj1.y));





	return 0;
}
se que algunas de las librerias tal vez no son ni nesearia pero como dije hace tiempo que no programo nada y no recordaba ni que librerias eran para que jeje.

bueno lo primero es que antes no me toco declarar ni clases en c++ eso solo lo llegue ha ahcer ne java, investigando un poco hice este programa secillo que se supone debe de heredar a Eleva, Pitagoras y Area en en rectangulo esi el objeto de tipo rectanguilo tendria estas caracteristicas y solo con un objeto realizaria los tres tiops de operaciones.

ahora viendo la lista de errores el primero me dice que mi contructor es de un tipo inbalido o tiene una redefinicion ilegal en el nombre de la clase ilegal, de momento no creo estar redefiniendo asi que tal ves sea un error de retorno en el tipo pero todo lo declare de tipo doble para no errar en eso por eso estoy un poco confundido.

Tambien es cierto que no estoy seguro de si es valido hacer declaraciones como esta

Código:
double pitagoras(double x, double y)
el programa lo hice con ayuda de un compañero y supongo que esto es el un metodo de la clase y del tipo doble que resive dos valores de tipo doble pero en relidad no estoy seguro.

En fin estoy intentando corregir este programa y acudo a ustedes que tanto me ayudaron en el pasado en otros temas para hacer funcionar este sencillo programa que ami de momento me tiene atrapado.

de antemano grasias a los que me brinden su conocimiento y ayuda
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 16:51.