Ver Mensaje Individual
  #10 (permalink)  
Antiguo 07/08/2015, 14:12
godeffuffeff
 
Fecha de Ingreso: agosto-2015
Mensajes: 10
Antigüedad: 9 años, 1 mes
Puntos: 0
Respuesta: Problema - No encuentro solucion - Separar interfaz de la implementacion -

Gracias por responder xKuZz.
en cuanto al winmain todo esta bien ya no da problemas, como dijo vangodp, necesitaba crear un proyecto, y como tu dijiste sustitui el codigo por defecto de main en el proyecto de codeblocks, lo cual ayudo, pero me sigue dando este error,

undefined reference to `LibroCalificaciones::LibroCalificaciones(std::str ing)'
undefined reference to `LibroCalificaciones::LibroCalificaciones(std::str ing)'
undefined reference to `LibroCalificaciones::obtenerNombreCurso()'
undefined reference to `LibroCalificaciones::obtenerNombreCurso()'

mira, este es el codigo que actualmente uso, segun ya esta corregido, lo voy a pasar tal cual, con comentarios y todo.

Si logras correrlo, porfavor explicame que pasos seguiste, porque no encuentro informacion que sea capaz de comprender por ningun lado, en especial me interesa saber como implementar el codigo objeto de LibroCalificaciones.h a el codigo cliente (main).

LibroCalificaciones.h
Código C++:
Ver original
  1. #include<string> //La clase LibroCalificaciones utiliza la clase string estandar de c++
  2.  
  3. //Definicion de la clase LibroCalificaciones
  4. class LibroCalificaciones
  5. {
  6. public:
  7.     explicit LibroCalificaciones (std::string); //Contructor que inicializa a nombreCurso
  8.     void establecerNombreCurso (std::string); //Establecer el nombre del curso
  9.     std::string obtenerNombreCurso() const; //Obtiene el nombre del curso
  10.     void mostrarMensaje() const;//Muestra un mensaje de bienvenida
  11.     private:
  12.     std::string nombreCurso; //Nombre del curso para este LibroCalificaciones
  13. }; //Fin de la clase LibroCalificaciones

LibroCalificaciones.cpp
Código C++:
Ver original
  1. #include<iostream>
  2. #include"LibroCalificaciones.h" //Incluye la definicion de la clase LibroCalificaciones
  3. using namespace std;
  4.  
  5. //El constructor inicializa a nombreCurso con el objeto string suministrado como argumento
  6. LibroCalificaciones::LibroCalificaciones(string nombre)
  7. : nombreCurso (nombre) //Inicializador de miembros para inicializar nombreCurso
  8. {
  9.     //Cuerpo vacio
  10. } //Fin del constructor de LibroCalificaciones
  11.  
  12. //Funcion para establecer el nombreCurso del objeto
  13. void LibroCalificaciones::establecerNombreCurso(string nombre)
  14. {
  15.     nombreCurso = nombre; //Almacena el nombre del curso en el objeto
  16. }//Funncion de la funcion establecerNombreCurso
  17.  
  18. //Funcion para obtener el nombre del curso
  19. string LibroCalificaciones::obtenerNombreCurso() const
  20. {
  21.     return nombreCurso; //Devuelve el nombre del objeto
  22. } //Fin de la funcion obtenerNombreCurso
  23.  
  24. //Muestra un mensaje de bienvenida al usuario de LibroCalificaciones
  25. void LibroCalificaciones::mostrarMensaje() const
  26. {
  27.     //Llama a obtenerNombreCurso para obtener el nombreCurso
  28.     cout<<"Bienvenido al libro de calificaciones para :\n" <<obtenerNombreCurso()
  29.     <<"!" <<endl;
  30. } //Fin de la funcion mostrarMensaje

main
Código C++:
Ver original
  1. #include<iostream>
  2. #include"LibroCalificaciones.h" //Incluye la definicion de la clase LibroCalificaciones
  3. using namespace std;
  4.  
  5. //La funcion main enpieza la ejecucuin del programa
  6. int main ()
  7. {
  8.     //Crea un objeto LibroCalificaciones
  9.     LibroCalificaciones libroCalificaciones1 ("CS101 introduccion a la programacion en C++");
  10.     LibroCalificaciones libroCalificaciones2 ("CS102 estructura de datos en C++");
  11.  
  12.     //Muestra el valor inicial de nombreCurso para cada LibroCalificaciones
  13.     cout<<"LibroCalificaciones1 creado para el curso : " <<libroCalificaciones1.obtenerNombreCurso()
  14.         <<"\nLibroCalificaciones2 creado para el curso : " <<libroCalificaciones2.obtenerNombreCurso()
  15.         <<endl;
  16. } //Fin de la funcion main