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:
main LibroCalificaciones.cpp#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; }
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; }