Foros del Web » Programación para mayores de 30 ;) » Programación General »

Problema - No encuentro solucion - Separar interfaz de la implementacion - Deitel

Estas en el tema de Problema - No encuentro solucion - Separar interfaz de la implementacion - Deitel en el foro de Programación General en Foros del Web. Buenas. Soy nuevo en esto de la programacion, ya intente buscar soluciones en otros lados, pero las respuestas son muy muy tecnicas o muy vagas. ...
  #1 (permalink)  
Antiguo 07/08/2015, 01:45
 
Fecha de Ingreso: agosto-2015
Mensajes: 10
Antigüedad: 9 años, 4 meses
Puntos: 0
Pregunta Problema - No encuentro solucion - Separar interfaz de la implementacion - Deitel

Buenas.
Soy nuevo en esto de la programacion, ya intente buscar soluciones en otros lados, pero las respuestas son muy muy tecnicas o muy vagas.
quisiera saber si alguien podria compartir algo de su conocimiento con migo.
Estuve leyendo en otros foros y aqui mismo incluso pero las unicas respuestas que encontre fueron crear main , crear winmain o usar windows.h y otras que se metian con los ajustes del compilador pero ninguna funciono.

Para darles un ejemplo de las respuestas que encontre :
http://www.forosdelweb.com/f96/problema-con-definir-las-funciones-miembro-clase-cpp-separado-966134/
Vaya respuesta, no creen?


Tengo tiempo leyendo el libro de dietel "c++11 como programar" y estoy atorado en un tema del libro , para se exacto el capitulo 3 , tema 3.7 (si, lose... que novato.).
El problema se me da a la hora de compilar la clase LibroCalificaciones.

Uso Code::blocks y Dev C++ con MinGW (dudo que cambiando de IDE se solucione algo, pero bueno... ustedes son los expertos), y en ambos me aparece el mismo error "Undefined reference to WinMain@16".
(En gnu/linux ubuntu con g++ si puedo compilar la clase, solo la clase, pero de momento me quiero centrar en windows.)

Si intento compilar el codigo cliente (main) me paracesen estos errores,

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()'

Este es mi codigo.

LibroCalificaciones.h
Código:
class LibroCalificaciones
{
public:
    explicit LibroCalificaciones (std::string); nombreCurso
    void establecerNombreCurso (std::string); 
    std::string obtenerNombreCurso() const; 
    void mostrarMensaje() const;
private:
    std::string nombreCurso; 
};

LibroCalificaciones.cpp
Código:
#include<iostream>
#include"LibroCalificaciones.h" 


LibroCalificaciones::LibroCalificaciones(string nombre)
: nombreCurso (nombre)
{
    
} 

void LibroCalificaciones::establecerNombreCurso(string nombre)
{
    nombreCurso = nombre;

string LibroCalificaciones::obtenerNombreCurso() const
{
    return nombreCurso;
}

void LibroCalificaciones::mostrarMensaje() const
{
    cout<<"Bienvenido al libro de calificaciones para :\n" <<obtenerNombreCurso()
    <<"!" <<endl;
}
main LibroCalificaciones.cpp
Código:
#include<iostream>
#include"LibroCalificaciones.h" 
using namespace std;

int main ()
{
    LibroCalificaciones libroCalificaciones1 ("CS101 introduccion a la programacion   
    en C++");
    LibroCalificaciones libroCalificaciones2 ("CS102 estructura de datos en C++");

    cout<<"LibroCalificaciones1 creado para el curso : " 
   <<libroCalificaciones1.obtenerNombreCurso()
   <<"\nLibroCalificaciones2 creado para el curso : " 
   <<libroCalificaciones2.obtenerNombreCurso()
   <<endl;
}

Etiquetas: c++, implementacion, interfaz
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 00:54.