[Tutorial] Obter valor de vбrios itens de mesma tag(sequкncia enumerada)
#1

O tutorial consiste em mostrar como obter dados de uma enumeraзгo de constantes. Essa aзгo pode ser ъtil por exemplo, pra salvar todas informaзхes do jogador como uma pilha.

Crie as constantes com a tag 'minhasequencia':
pawn Код:
enum minhasequencia
{
constante1,
constante2,
constante3
}
Contantes criadas, agora vamos colocar ela em uma array matriz.
pawn Код:
new array[minhasequencia];
E vamos tambйm atribuir algum valor аs cйlulas:
pawn Код:
array[constante1] = 10;
array[constante2] = 11;
array[constante3] = 13;
Feito, temos a array matriz com as cйlulas:
pawn Код:
cйlula 0: constante1(10)
cйlula 1: constante2(11)
cйlula 2: constante3(12)
Imagine se precisassemos imprimir esses dados de uma vez, como seria?
Assim?
pawn Код:
for(new i = 0; i < sizeof array; ++i)
{
    printf("array[%d] = %d", i, array[i]);
}
Nгo, desse modo funciona, porйm geraria o warning: 'tag mismatch'.

Para uma compilaзгo limpa, fazemos assim: Usaremos a tag 'minhasequencia' pra percorrer por dentro da enumeraзгo completa.
pawn Код:
for(new i = 0; minhasequencia:i < minhasequencia; ++i)
{
    printf("array[%d]: %d", i, array[minhasequencia:i]);
}
No loop for, na segunda condiзгo, deve se usar uma tag nos dois lados do operador, no contrбrio o cуdigo nгo seria interpretado pelo compilador como deveria, e vocк receberia o warning: 'tag mismath'.

Acaba aqui, tendo esse exemplo explicado, creio que vocк pode fazer em algo em maior escala com as constantes enumeradas.
Reply
#2

Huum .. Muito Bom Cynic ..
Reply
#3

Legal, bem explicativo.
na minha opiniгo so faltou uma coisa: Dar exemplos de quando poderб ser usado. Sim tem ali os loop demosntrativo mas eu digo em outras situaзхes
Parabйns. bom trabalho
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)