Código
// Fig. 3.13: fig03_13.cpp // Demostración de la clase LibroCalificaciones después de separar // su interfaz de su implementación. #include <iostream> using std::cout; using std::endl; #include "LibroCalificaciones.h" // incluye la definición de la clase LibroCalificaciones // la función main empieza la ejecución del programa int main() { // crea dos objetos LibroCalificaciones LibroCalificaciones libroCalificaciones1( "CS101 Introduccion a la programacion en C++" ); LibroCalificaciones libroCalificaciones2( "CS102 Estructuras de datos en C++" ); // muestra el valor inicial de courseName para cada LibroCalificaciones cout << "libroCalificaciones1 creado para el curso: " << libroCalificaciones1.obtenerNombreCurso() << "\nlibroCalificaciones2 creado para el curso: " << libroCalificaciones2.obtenerNombreCurso() << endl; return 0; // indica que terminó correctamente } luego en otro archivo: // Fig. 3.12: LibroCalificaciones.cpp // Definiciones de las funciones miembro de LibroCalificaciones. Este archivo contiene // implementaciones de las funciones miembro cuyo prototipo está en LibroCalificaciones.h. #include <iostream> using std::cout; using std::endl; #include "LibroCalificaciones.h" // incluye la definición de la clase LibroCalificaciones // el constructor inicializa nombreCurso con el objeto string suministrado como argumento LibroCalificaciones::LibroCalificaciones( string nombre ) { establecerNombreCurso( nombre ); // llama a la función establecer para inicializar nombreCurso } // fin del constructor de LibroCalificaciones // función para establecer el nombre del curso void LibroCalificaciones::establecerNombreCurso( string nombre ) { nombreCurso = nombre; // almacena el nombre del curso en el objeto } // fin de la función establecerNombreCurso // función para obtener el nombre del curso string LibroCalificaciones::obtenerNombreCurso() { return nombreCurso; // devuelve el nombreCurso del objeto } // fin de la función obtenerNombreCurso // muestra un mensaje de bienvenida al usuario de LibroCalificaciones1 void LibroCalificaciones::mostrarMensaje() { // llama a obtenerNombreCurso para obtener el nombreCurso cout << "Bienvenido al libro de calificaciones para\n" << obtenerNombreCurso() << "!" << endl; } // fin de la función mostrarMensaje luego en otro archivo: // Fig. 3.11: LibroCalificaciones.h // Definición de la clase LibroCalificaciones. Este archivo presenta la interfaz // public de LibroCalificaciones sin revelar las implementaciones de sus funciones // miembro, que están definidas en LibroCalificaciones.cpp. #include <string> // la clase LibroCalificaciones utiliza la clase string estándar de C++ using std::string; // definición de la clase LibroCalificaciones class LibroCalificaciones { public: LibroCalificaciones( string ); // constructor que inicializa a nombreCurso void establecerNombreCurso( string ); // función que establece el nombre del curso string obtenerNombreCurso(); // función que obtiene el nombre del curso void mostrarMensaje(); // función que muestra un mensaje de bienvenida private: string nombreCurso; // nombre del curso para este LibroCalificaciones };
me aparecen estos errores:
Citar
C:\Users\levis\AppData\Local\Temp\ccJtBm2S.o fig03_13.cpp:(.text+0x84): undefined reference to `LibroCalificaciones::LibroCalificaciones(std::string)'
C:\Users\levis\AppData\Local\Temp\ccJtBm2S.o fig03_13.cpp:(.text+0xe5): undefined reference to `LibroCalificaciones::LibroCalificaciones(std::string)'
C:\Users\levis\AppData\Local\Temp\ccJtBm2S.o fig03_13.cpp:(.text+0x11a): undefined reference to `LibroCalificaciones::obtenerNombreCurso()'
C:\Users\levis\AppData\Local\Temp\ccJtBm2S.o fig03_13.cpp:(.text+0x134): undefined reference to `LibroCalificaciones::obtenerNombreCurso()'
C:\Users\levis\Downloads\c++\librocali_clasecli_definiclaseinterfaz_implementacion_FALLO\collect2.exe [Error] ld returned 1 exit status
C:\Users\levis\AppData\Local\Temp\ccJtBm2S.o fig03_13.cpp:(.text+0xe5): undefined reference to `LibroCalificaciones::LibroCalificaciones(std::string)'
C:\Users\levis\AppData\Local\Temp\ccJtBm2S.o fig03_13.cpp:(.text+0x11a): undefined reference to `LibroCalificaciones::obtenerNombreCurso()'
C:\Users\levis\AppData\Local\Temp\ccJtBm2S.o fig03_13.cpp:(.text+0x134): undefined reference to `LibroCalificaciones::obtenerNombreCurso()'
C:\Users\levis\Downloads\c++\librocali_clasecli_definiclaseinterfaz_implementacion_FALLO\collect2.exe [Error] ld returned 1 exit status
alguien que me ayude por favor!
· Los códigos deben ir en etiquetas GeSHi
· No se debe escribir en mayúsculas
>aquí las reglas del foro
-Engel Lex