SA-MP Forums Archive
duda sobre forward... - Printable Version

+- SA-MP Forums Archive (https://sampforum.blast.hk)
+-- Forum: Non-English (https://sampforum.blast.hk/forumdisplay.php?fid=9)
+--- Forum: Languages (https://sampforum.blast.hk/forumdisplay.php?fid=33)
+---- Forum: Español/Spanish (https://sampforum.blast.hk/forumdisplay.php?fid=29)
+---- Thread: duda sobre forward... (/showthread.php?tid=421175)



duda sobre forward... - OTACON - 08.03.2013

Buenas a todos, tengo una duda con forward, he visto ke algunos al crear un forward y public en vez de colocarlo de la siguiente manera:

pawn Код:
forward ejemplo(playerid)
public ejemplo(playerid) {

}
lo colocan asi, pero ami me tira error.
pawn Код:
forward public ejemplo(playerid) {

}
es valida esta forma? y por ke me tira error ami ?.

Desde ya muchas Gracias.


Respuesta: duda sobre forward... - xSDx - 08.03.2013

me parece que esto
pawn Код:
forward public ejemplo(playerid);
es solo para hookear callbacks, o es lo que eh visto por que termina la callback ahi mismo.

edit si quieres usar solo una linea al hacer callbacks puedes crear un macro:
pawn Код:
#define CallBack(%0) forward(%0);public(%0)



Respuesta: duda sobre forward... - Parka - 08.03.2013

colocarlo asi es igual que colocarlo asi

pawn Код:
///igual te darб el mismo error.

forward
public ejemplo(playerid)
{

}
Utiliza mejor un Macro:

pawn Код:
#define CallBack%0(%1) forward%0(%1); public%0(%1)



Respuesta: duda sobre forward... - OTACON - 08.03.2013

no es para utilizar el macro, eso ya lo se pero tenia esa duda, por ke algunos lo colocan asi por ejemplo chaoz cuando da un ejemplo y otros.


Respuesta: duda sobre forward... - xSDx - 08.03.2013

Quote:
Originally Posted by bytytus
Посмотреть сообщение
no es para utilizar el macro, eso ya lo se pero tenia esa duda, por ke algunos lo colocan asi por ejemplo chaoz cuando da un ejemplo y otros.
se coloca asi
pawn Код:
forward public ejemplo(playerid);
para llamar a una callback que no tiene ninguna funciуn, pero es necesario que sea llamada, esto se usa en includes con hooks, puedes probar poniendo asi solamente:

pawn Код:
forward public ejemplo(playerid);
y luego en OnPlayerConnect

pawn Код:
printf("aun no es llamado");
ejemplo(playerid);
printf("Ya ha sida llamada la callback");
de esa manera compruebas que se llama a una callback sin funcion, en el uso de los hooks esto sirve mucho.

Saludos.


Respuesta: duda sobre forward... - OTACON - 08.03.2013

Quote:
Originally Posted by xSDx
Посмотреть сообщение
se coloca asi
pawn Код:
forward public ejemplo(playerid);
para llamar a una callback que no tiene ninguna funciуn, pero es necesario que sea llamada, esto se usa en includes con hooks, puedes probar poniendo asi solamente:

pawn Код:
forward public ejemplo(playerid);
y luego en OnPlayerConnect

pawn Код:
printf("aun no es llamado");
ejemplo(playerid);
printf("Ya ha sida llamada la callback");
de esa manera compruebas que se llama a una callback sin funcion, en el uso de los hooks esto sirve mucho.

Saludos.
ah, ok listo entonce ya entendi.
Gracias, duda aclarada .

Saludos.


Respuesta: duda sobre forward... - TheChaoz - 08.03.2013

en realidad, ambas formas son correctas:

pawn Код:
forward public Nombre(parametros);
como :

pawn Код:
forward Nombre(parametros);
La diferencia esta en que si se declara de la primer forma, se agregan algunas restricciones como no poder declarar valores por defecto.


Respuesta: duda sobre forward... - jwalker - 09.03.2013

Quote:
Originally Posted by the_chaoz
Посмотреть сообщение
en realidad, ambas formas son correctas:

pawn Код:
forward public Nombre(parametros);
como :

pawn Код:
forward Nombre(parametros);
La diferencia esta en que si se declara de la primer forma, se agregan algunas restricciones como no poder declarar valores por defecto.
A que te referis por no poder declarar valores por defecto?


Respuesta: duda sobre forward... - TheChaoz - 09.03.2013

Valores que toman por defecto si el usuario no indica alguno (Parametros opcionales por asi decirlo).