Função Struct

.

por André Bürger -
Número de respostas: 0
Eu entendi como funciona o typedef e a função de struct, porém estou com um problema:
para tentar entender melhor aquele

POS jogada(tabuleiro meu, tabuleiro outro, POS minha, POS deles);

eu voltei tudo ao como seria sem o typedef e ficou assim:

struct{
int x,y; //esses serão os parâmetros que eu irei jogar após analisar todos os dados abaixo
int meu[4][4]; //meu tabuleiro, que será modificado a cada rodada colocando um 0 em casas jogadas
int outro[4][4]; //tabuleiro do outro
struct{
int x,y; //minha posição atual
}minha;
struct{
int x,y; //posição atual do outro
}dele;
}jogada;


Quando eu deixo esse último jeito de declaração não ocorrem problemas de localização ao compilar, por exemplo ao chamar a variável jogada.meu[#][#] tudo se passa normalmente. Agora com aquela declaração mais acima o DEV dá msg:

59 ...\MAC115\EP-3\1EP3.cpp request for member `meu' in `jogada', which is of non-class type `POS ()(int (*)[4], int (*)[4], POS, POS)'
Gostaria de entender o que acontece aqui e se realmente elas são equivalentes.