Ver Mensaje Individual
  #4 (permalink)  
Antiguo 22/03/2016, 08:57
eferion
 
Fecha de Ingreso: octubre-2014
Ubicación: Madrid
Mensajes: 1.212
Antigüedad: 9 años, 7 meses
Puntos: 204
Respuesta: Problema con CodeBlocks C++

Código C++:
Ver original
  1. #include <iostream>
  2. #include "funpromedio.cpp"
  3.  
  4.  
  5. int funcpromedio(int nota1, int nota2, int nota3, float promedio);
  6.  
  7. using namespace std;
  8.  
  9. int main()

Para que nos orientemos, es parte de tu fichero main.cpp.

Si resulta que tienes un funpromedio.h que incluye una declaración de funcpromedio... ¿Por qué no usas dicha cabecera en main.cpp? Es una mala práctica incluir ficheros de código y su uso debería vigilarse ya que los resultados pueden no ser buenos como ahora entenderás.

Esto es lo que esperaría encontrarse cualquier programador de C++.

Código C++:
Ver original
  1. #include <iostream>
  2. #include "funpromedio.h"
  3.  
  4.  using namespace std;
  5.  
  6. int main()

¿Cual es el problema? Básicamente que al incluir funpromedio.cpp estabas incluyendo también funpromedio.h (sí, ese include en funpromedio.cpp), y recordemos que funpromedio.h tiene una declaración de la función funcpromedio. Y después de tanto include añades una segunda declaración de la función funcpromedio(la que tienes en tu versión del main.cpp). ¿Resultado? El compilador encuentra dos declaraciones de la misma función y eso no le mola.

Un saludo.
__________________
La ayuda se paga con esfuerzo o con dinero. Si no estás dispuesto a esforzarte y quieres que te hagan los deberes pide presupuesto, al menos así ahorrarás tiempo.