26.11.2012, 14:27
La respuesta es no, no son mejores en cuanto a optimizacion. Explicado de una forma simple, esto se debe a que cuando se utilizan variables/arrays normales se guardan directo en la memoria y se accede directamente a la misma. En cambio cuando se utilizan PVars, el servidor accede a la memoria donde se guardo el nombre de dicha variable, de alli toma el puntero almacenado y recien ahi lee el contenido de dicha variable.
Explicacion grafica:
Variables normales:
Variables PVar:
Explicacion grafica:
Variables normales:
pawn Код:
new miarray[10];
miarray = "contenido";
Код:
Memoria: [c|o|n|t|e|n|i|d|o|\0]
pawn Код:
SetPVarString(playerid, "Extra", "contenido");
Код:
Memoria: 1є Busca en la memoria el puntero correspondiente a la variable "Extra" del jugador. [E|x|t|r|a|\0] => Obtiene el puntero 2є Carga el contenido correspondiente a la direccion del puntero. [c|o|n|t|e|n|i|d|o|\0]