elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Guía rápida para descarga de herramientas gratuitas de seguridad y desinfección


+  Foro de elhacker.net
|-+  Foros Generales
| |-+  Dudas Generales (Moderador: engel lex)
| | |-+  Ayuda, me aparecen errores al compilar
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Ayuda, me aparecen errores al compilar  (Leído 3,093 veces)
anywombay454

Desconectado Desconectado

Mensajes: 2


Ver Perfil
Ayuda, me aparecen errores al compilar
« en: 22 Enero 2017, 19:03 pm »

Código
  1. // Fig. 3.10: fig03_10.cpp
  2. // Inclusión de la clase LibroCalificaciones del archivo LibroCalificaciones.h para usarla en main.
  3. #include <iostream>
  4. using std::cout;
  5. using std::endl;
  6.  
  7. #include "LibroCalificaciones.h" // incluye la definición de la clase LibroCalificaciones
  8.  
  9. // la función main empieza la ejecución del programa
  10. int main()
  11. {
  12. // crea dos objetos LibroCalificaciones
  13. LibroCalificaciones libroCalificaciones1( "CS101 Introduccion a la programacion en C++" );
  14. LibroCalificaciones libroCalificaciones2( "CS102 Estructuras de datos en C++" );
  15.  
  16. // muestra el valor inicial de nombreCurso para cada LibroCalificaciones
  17. cout << "libroCalificaciones1 creado para el curso: " << libroCalificaciones1.obtenerNombreCurso()
  18. << "\nlibroCalificaciones2 creado para el curso: " <<  libroCalificaciones2.obtenerNombreCurso()
  19. << endl;
  20. return 0; // indica que terminó correctamente
  21. } // fin de main
  22.  
  23.  
  24.  // Fig. 3.9: LibroCalificaciones.h
  25. // Definición de la clase LibroCalificaciones en un archivo separado de main.
  26. #include <iostream>
  27. using std::cout;
  28. using std::endl;
  29.  
  30. #include <string> // la clase LibroCalificaciones utiliza la clase string estándar de C++
  31. using std::string;
  32.  
  33. // definición de la clase LibroCalificaciones
  34. class LibroCalificaciones
  35. {
  36. public:
  37. // el constructor inicializa nombreCurso con la cadena que se suministra como argumento
  38. LibroCalificaciones( string nombre )
  39. {
  40. establecerNombreCurso( nombre ); // llama a la función establecer para inicializarnombreCurso
  41. } // fin del constructor de LibroCalificaciones
  42.  
  43. // función para establecer el nombre del curso
  44. void establecerNombreCurso( string nombre )
  45. {
  46.  nombreCurso = nombre; // almacena el nombre del curso en el objeto
  47. } // fin de la función establecerNombreCurso
  48.  
  49. // función para obtener el nombre del curso
  50. string obtenerNombreCurso()
  51. {
  52. return nombreCurso; // devuelve el nombreCurso del objeto
  53. } // fin de la función obtenerNombreCurso
  54.  
  55. // muestra un mensaje de bienvenida al usuario de LibroCalificaciones
  56. void mostrarMensaje()
  57. {
  58. // llama a obtenerNombreCurso para obtener el nombreCurso
  59. cout << "Bienvenido al libro de calificaciones para\n" << obtenerNombreCurso()
  60. << "!" << endl;
  61. } // fin de la función mostrarMensaje
  62. private:
  63. string nombreCurso; // nombre del curso para este LibroCalificaciones
  64. }; // fin de la clase LibroCalificaciones
  65.  


· Los códigos deben ir en etiquetas GeSHi
>aquí las reglas del foro
-Engel Lex


« Última modificación: 22 Enero 2017, 20:09 pm por engel lex » En línea

anywombay454

Desconectado Desconectado

Mensajes: 2


Ver Perfil
Re: Ayuda, me aparecen errores al compilar
« Respuesta #1 en: 22 Enero 2017, 19:12 pm »

el código anterior me compila y se ejecuta bien pero cuando cambio cuando oculto la implementación de de la interfaz de la clase  como aquí:


Código
  1. // Fig. 3.13: fig03_13.cpp
  2. // Demostración de la clase LibroCalificaciones después de separar
  3. // su interfaz de su implementación.
  4. #include <iostream>
  5. using std::cout;
  6. using std::endl;
  7.  
  8. #include "LibroCalificaciones.h" // incluye la definición de la clase LibroCalificaciones
  9.  
  10. // la función main empieza la ejecución del programa
  11. int main()
  12. {
  13. // crea dos objetos LibroCalificaciones
  14. LibroCalificaciones libroCalificaciones1( "CS101 Introduccion a la programacion en C++" );
  15. LibroCalificaciones libroCalificaciones2( "CS102 Estructuras de datos en C++" );
  16.  
  17. // muestra el valor inicial de courseName para cada LibroCalificaciones
  18. cout << "libroCalificaciones1 creado para el curso: " << libroCalificaciones1.obtenerNombreCurso()
  19. << "\nlibroCalificaciones2 creado para el curso: " << libroCalificaciones2.obtenerNombreCurso()
  20. << endl;
  21. return 0; // indica que terminó correctamente
  22. }
  23.  
  24. luego en otro archivo:
  25.  
  26. // Fig. 3.12: LibroCalificaciones.cpp
  27. // Definiciones de las funciones miembro de LibroCalificaciones. Este archivo contiene
  28. // implementaciones de las funciones miembro cuyo prototipo está en LibroCalificaciones.h.
  29. #include <iostream>
  30. using std::cout;
  31. using std::endl;
  32.  
  33. #include "LibroCalificaciones.h" // incluye la definición de la clase LibroCalificaciones
  34.  
  35. // el constructor inicializa nombreCurso con el objeto string suministrado como argumento
  36. LibroCalificaciones::LibroCalificaciones( string nombre )
  37. {
  38. establecerNombreCurso( nombre ); // llama a la función establecer para inicializar nombreCurso
  39. } // fin del constructor de LibroCalificaciones
  40.  
  41. // función para establecer el nombre del curso
  42. void LibroCalificaciones::establecerNombreCurso( string nombre )
  43. {
  44. nombreCurso = nombre; // almacena el nombre del curso en el objeto
  45. } // fin de la función establecerNombreCurso
  46.  
  47. // función para obtener el nombre del curso
  48. string LibroCalificaciones::obtenerNombreCurso()
  49. {
  50. return nombreCurso; // devuelve el nombreCurso del objeto
  51. } // fin de la función obtenerNombreCurso
  52.  
  53. // muestra un mensaje de bienvenida al usuario de LibroCalificaciones1
  54. void LibroCalificaciones::mostrarMensaje()
  55. {
  56. // llama a obtenerNombreCurso para obtener el nombreCurso
  57. cout << "Bienvenido al libro de calificaciones para\n" << obtenerNombreCurso()
  58. << "!" << endl;
  59. } // fin de la función mostrarMensaje
  60.  
  61. luego en otro archivo:
  62.  
  63. // Fig. 3.11: LibroCalificaciones.h
  64. // Definición de la clase LibroCalificaciones. Este archivo presenta la interfaz
  65. // public de LibroCalificaciones sin revelar las implementaciones de sus funciones
  66. // miembro, que están definidas en LibroCalificaciones.cpp.
  67. #include <string> // la clase LibroCalificaciones utiliza la clase string estándar de C++
  68. using std::string;
  69.  
  70. // definición de la clase LibroCalificaciones
  71. class LibroCalificaciones
  72. {
  73. public:
  74. LibroCalificaciones( string ); // constructor que inicializa a nombreCurso
  75. void establecerNombreCurso( string ); // función que establece el nombre del curso
  76. string obtenerNombreCurso(); // función que obtiene el nombre del curso
  77. void mostrarMensaje(); // función que muestra un mensaje de bienvenida
  78. private:
  79. string nombreCurso; // nombre del curso para este LibroCalificaciones
  80. };

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

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


« Última modificación: 22 Enero 2017, 20:10 pm por engel lex » En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
como compilar blender 2. 5 en UBUNTU para determinar errores
Diseño Gráfico
rub'n 3 4,799 Último mensaje 22 Septiembre 2010, 00:06 am
por peib0l
errores de programa en C al compilar gcc
Programación C/C++
ferminta 4 2,991 Último mensaje 13 Enero 2012, 18:40 pm
por rir3760
errores al compilar asm « 1 2 »
ASM
Drewermerc 19 14,795 Último mensaje 5 Mayo 2014, 21:41 pm
por Eternal Idol
Errores al compilar
Programación C/C++
Supermanxd 3 3,007 Último mensaje 6 Marzo 2015, 07:25 am
por rir3760
Ayuda con codigo ? C++ error al compilar, al compilar recibo errores (id turned 1 exit estatus) y..
Programación C/C++
DonJuanPinorio 4 3,433 Último mensaje 9 Febrero 2021, 19:02 pm
por Usuario887
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines