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

 

 


Tema destacado: ¿Eres nuevo? ¿Tienes dudas acerca del funcionamiento de la comunidad? Lee las Reglas Generales


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  Problema llamando el método de una clase :/
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] 2 Ir Abajo Respuesta Imprimir
Autor Tema: Problema llamando el método de una clase :/  (Leído 5,809 veces)
Abril7

Desconectado Desconectado

Mensajes: 22


Ver Perfil
Problema llamando el método de una clase :/
« en: 27 Noviembre 2016, 02:18 am »

Hola en este pedazo de mi codigo:
Código
  1.  
  2. JugadorSolo a;
  3.  
  4.      for(int a =0;a <= 5; a++){
  5. for(int b = 0; b<=6; b++)
  6.                tablero[a][b] = ' ';
  7. }
  8.  
tengo que usar el arreglo "char tablero[6][7]" que forma parte de la clase JugadorSolo. Entonces cree un get en esta clase para poder reasignarlo a otra variable en el main y usarlo, pero al hacerlo me da un error, hago algo como esto:

Código
  1. JugadorSolo.h:
  2.  
  3. char JugadorSolo::getTablero()
  4. {
  5.    return tablero[6][7];
  6. }
  7.  
  8. int main:
  9.  
  10.    JugadorSolo a;
  11.  
  12.        for(int a =0;a <= 5; a++){
  13. for(int b = 0; b<=6; b++)
  14.           a.getTablero();
  15.  
  16. }
  17.  
Me da el error:
"Request for member "getTablero" in 'a', which is of non-class type 'int'

Despues intente haciendo todo el ciclo una funcion de la clase para poder utilizarlo entonces lo ponia algo asi:
    JugadorSolo a;
    a.ciclo();

Y aqui me da el error 'a' was not declared in this scope.

Despues intente poner esa variable en global y me da este error:

'tablero' was not declared in this scope


No se que hago mal o por qué de ninguna manera funciona, agradeceria mucho si alguien sabe.

Muchas gracias.



Mod: Los códigos deben ir en etiquetas GeSHi, no hacer doble post


« Última modificación: 27 Noviembre 2016, 02:26 am por engel lex » En línea

engel lex
Moderador Global
***
Desconectado Desconectado

Mensajes: 15.514



Ver Perfil
Re: Problema llamando el método de una clase :/
« Respuesta #1 en: 27 Noviembre 2016, 02:28 am »

donde está la declaranción de la clase JugadorSolo?


En línea

El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.
Abril7

Desconectado Desconectado

Mensajes: 22


Ver Perfil
Re: Problema llamando el método de una clase :/
« Respuesta #2 en: 27 Noviembre 2016, 02:32 am »

esta arriba, no lo anote porque solo puse una parte del codigo, pero esta hecha correctamente
En línea

engel lex
Moderador Global
***
Desconectado Desconectado

Mensajes: 15.514



Ver Perfil
Re: Problema llamando el método de una clase :/
« Respuesta #3 en: 27 Noviembre 2016, 02:39 am »

no habia leido el error ya lo vi

Citar
"Request for member "getTablero" in 'a', which is of non-class type 'int'

peticion para el miembro "getTablero" en 'a', quien es un tipo int y no es una clase

Código
  1.  
  2. char JugadorSolo::getTablero()
  3. {
  4.    return tablero[6][7];
  5. }
  6.  
  7. int main:
  8.  
  9.    JugadorSolo a; //<--------
  10.  
  11.        for(int a =0;a <= 5; a++){//<-  "int a =0"
  12. for(int b = 0; b<=6; b++)
  13.           a.getTablero();
  14.  
  15. }
  16.  

redeclaraste "a" como tipo int... es raro que el compilador te dejara hacer esa metida de pata... pero eso es
En línea

El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.
Abril7

Desconectado Desconectado

Mensajes: 22


Ver Perfil
Re: Problema llamando el método de una clase :/
« Respuesta #4 en: 27 Noviembre 2016, 02:45 am »

Ahh es que en si en el for estaba el int a, cambie el nombre del objeto a
JugadorSolo uno;

e intente usar ahora la funcion que cree: uno.getTablero();
y ahora me da otro error, me dice " 'uno' was not declared in this scope" la cuestion es que justo antes de eso declarandolo .-. como se supone que arreglo eso?
En línea

engel lex
Moderador Global
***
Desconectado Desconectado

Mensajes: 15.514



Ver Perfil
Re: Problema llamando el método de una clase :/
« Respuesta #5 en: 27 Noviembre 2016, 02:47 am »

muestra la sección de código a ver (recuerda que no veo lo que tu ves)
En línea

El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.
Abril7

Desconectado Desconectado

Mensajes: 22


Ver Perfil
Re: Problema llamando el método de una clase :/
« Respuesta #6 en: 27 Noviembre 2016, 02:50 am »

Ah si, mira aquí estan:

https://gyazo.com/b6bbc8db16bd8fcaf7b9e7cc0edc3d66
https://gyazo.com/97d48f9b646fa6c0309323591d7653bb
https://gyazo.com/8e38e824a60ad04084e4c9d66a59f674
En línea

engel lex
Moderador Global
***
Desconectado Desconectado

Mensajes: 15.514



Ver Perfil
Re: Problema llamando el método de una clase :/
« Respuesta #7 en: 27 Noviembre 2016, 02:59 am »

el for no tiene llaves es decir solo aplica hasta el siguiente ";"



los for al igual que las otras estructuras de control crean su propio scope, ese "uno" solo está declarado dentro de ese for...

ten más cuidado con las declaraciones, las llaves y los scopes
En línea

El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.
Abril7

Desconectado Desconectado

Mensajes: 22


Ver Perfil
Re: Problema llamando el método de una clase :/
« Respuesta #8 en: 27 Noviembre 2016, 03:35 am »

https://gyazo.com/5f9fad2063acd88e5a2bb947fa368e84
En línea

engel lex
Moderador Global
***
Desconectado Desconectado

Mensajes: 15.514



Ver Perfil
Re: Problema llamando el método de una clase :/
« Respuesta #9 en: 27 Noviembre 2016, 03:43 am »

lo siento no entiendo lenguaje de señas cursores...

pero no has arreglado el for
En línea

El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.
Páginas: [1] 2 Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Poner metodo fuera de una clase
Java
.hack// 5 9,458 Último mensaje 17 Mayo 2007, 05:57 am
por .hack//
[Resuelto] Problema con Metodo de Clase
PHP
[u]nsigned 3 2,404 Último mensaje 16 Febrero 2015, 16:34 pm
por Hadess_inf
Como sobre-escribir un método de una clase base en una clase heredada?
Programación C/C++
julian21931500 5 3,854 Último mensaje 25 Febrero 2015, 23:49 pm
por ivancea96
Método list Clase File
Java
neveldine 1 2,169 Último mensaje 29 Diciembre 2015, 18:24 pm
por 0xFer
(JS y PHP) no puedo ejecutar metodo de clase JS atraves de metodo de clase PHP
PHP
noob2012 2 3,656 Último mensaje 7 Enero 2017, 22:27 pm
por noob2012
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines