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

 

 


Tema destacado: Como proteger una cartera - billetera de Bitcoin


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  [AYUDA] 'variable' was not declared in this scope
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: [AYUDA] 'variable' was not declared in this scope  (Leído 4,873 veces)
Rockstar97

Desconectado Desconectado

Mensajes: 28


Ver Perfil
[AYUDA] 'variable' was not declared in this scope
« en: 12 Mayo 2015, 04:25 am »

Estoy haciendo un código con clases, donde se almacenará información de los usuarios pero me da los siguientes errores:

Código:
C:\Users\personal\Documents\SinNombre3.cpp	In function 'int main()':
35 9 C:\Users\personal\Documents\SinNombre3.cpp [Error] 'nombre' was not declared in this scope
37 9 C:\Users\personal\Documents\SinNombre3.cpp [Error] 'especialidad' was not declared in this scope
39 9 C:\Users\personal\Documents\SinNombre3.cpp [Error] 'nsocial' was not declared in this scope
41 9 C:\Users\personal\Documents\SinNombre3.cpp [Error] 'nacimiento' was not declared in this scope

Estoy practicando, este es el código:

Código
  1. #include <iostream>
  2. #include <windows.h>
  3. #include <stdlib.h>
  4. #include <stdio.h>
  5.  
  6. using namespace std;
  7. const int tamanio=5;
  8.  
  9. class Medico
  10. {
  11. public:
  12. char nombre[30];
  13. char especialidad[30];
  14. int nsocial;
  15. int nacimiento;
  16. void Leer();
  17. void Mostrar();
  18.  
  19. };
  20.  
  21. main()
  22. {
  23. Medico M;
  24. int opc;
  25. int cant=0;
  26. do
  27. {
  28. cout<<"[1]----> LEER" <<endl;
  29. cout<<"[2]----> MOSTRAR" << endl;
  30. cin>>opc;
  31. switch(opc)
  32. {
  33. case 1:
  34. cout<<"NOMBRE: ";
  35. cin>>nombre;
  36. cout<<"ESPECIALIDAD: ";
  37. cin>>especialidad;
  38. cout<<"N. SEGURO SOCIAL: ";
  39. cin>>nsocial;
  40. cout<<"FECHA DE NACIMIENTO: ";
  41. cin>>nacimiento;
  42. break;
  43.  
  44. case 2:
  45. cout<<"CASO 2"<<endl;
  46. break;
  47. }
  48. }while(opc!=3);
  49.  
  50. cin.get();
  51. }

Compilo con Dev C++, he buscado por todos lados y no sale mucho relacionado con mi problema.

EDIT: Puse las variables públicas, porque creí que podría ser problema de que estaban privadas, pero sigue lo mismo.


« Última modificación: 12 Mayo 2015, 04:27 am por Rockstar97 » En línea

x64core


Desconectado Desconectado

Mensajes: 1.908


Ver Perfil
Re: [AYUDA] 'variable' was not declared in this scope
« Respuesta #1 en: 12 Mayo 2015, 04:47 am »

Para acceder a las variables de una clase se hace similar a como acceder a los miembros de una estructura usando el punto (.) y el guion con el mayor que (->).

M.xxxxxxxxx

Si estas trabajando en Windows el mejor entorno y compilar es VS con VC++.


En línea

MellaSystems

Desconectado Desconectado

Mensajes: 46



Ver Perfil
Re: [AYUDA] 'variable' was not declared in this scope
« Respuesta #2 en: 12 Mayo 2015, 16:52 pm »

Buenas, para tu duda lo que debes hacer es usar el objeto que creaste M y luego colocar el (.) para acceder a los atributos de la clase.

Ejemplo:
Código
  1. {
  2. case 1:
  3. cout<<"NOMBRE: ";
  4. cin>>M.nombre;
  5. cout<<"ESPECIALIDAD: ";
  6. cin>>M.especialidad;

Lee un poquito mas sobre las clases y te ayudara a entender mejor tu programa
En línea

Rockstar97

Desconectado Desconectado

Mensajes: 28


Ver Perfil
Re: [AYUDA] 'variable' was not declared in this scope
« Respuesta #3 en: 12 Mayo 2015, 17:06 pm »

Citar
Para acceder a las variables de una clase se hace similar a como acceder a los miembros de una estructura usando el punto (.) y el guion con el mayor que (->).

M.xxxxxxxxx

Si estas trabajando en Windows el mejor entorno y compilar es VS con VC++.

Es que en el curso nos ponen a trabajar con compiladores algo viejos, o con el Borland o con el Dev C++.
De todas maneras investigaré sobre el que dices ya que esto de los compiladores me gusta mucho probarlos.



Buenas, para tu duda lo que debes hacer es usar el objeto que creaste M y luego colocar el (.) para acceder a los atributos de la clase.

Ejemplo:
Código
  1. {
  2. case 1:
  3. cout<<"NOMBRE: ";
  4. cin>>M.nombre;
  5. cout<<"ESPECIALIDAD: ";
  6. cin>>M.especialidad;

Lee un poquito mas sobre las clases y te ayudara a entender mejor tu programa

Sí, ese era el problema... Yo sé eso del punto (.) pero se me había pasado, gracias por sus comentarios me ayudaron mucho.
En línea

MellaSystems

Desconectado Desconectado

Mensajes: 46



Ver Perfil
Re: [AYUDA] 'variable' was not declared in this scope
« Respuesta #4 en: 12 Mayo 2015, 17:09 pm »

Aunque te recomendaria que uses los metodos setter y getter. Es para ayudar que estamos.
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
No faltaba mas XD... ademas de scope una cam jaaja
Foro Libre
flacc 0 1,486 Último mensaje 23 Marzo 2011, 04:01 am
por flacc
my.resources.source.replace(variable, variable) Ayuda codedom
.NET (C#, VB.NET, ASP)
70N1 4 5,093 Último mensaje 19 Octubre 2011, 12:57 pm
por 70N1
Error de variable was declared but never referenced
Programación C/C++
arturoro 3 2,669 Último mensaje 20 Mayo 2012, 21:13 pm
por arturoro
Error: * was not declared in this scope
Programación C/C++
KISKE 5 6,362 Último mensaje 19 Enero 2013, 18:21 pm
por KISKE
iswblank has not been declared
Programación C/C++
leosansan 1 2,893 Último mensaje 22 Mayo 2013, 18:50 pm
por CCross
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines