Foro especializado en Warcraft III y su editor
 
BuscarEntrar al ChatboxPortal del foroÍndiceSpellsRegistrarseConectarseGrupos de Usuarios
Eventos Actuales
¡ Bienvenido Invitado !

Editar Perfil

Tus temas
Tus Mensajes ()

Enlaces rápidos








Comparte
 

 ¿Las funciones crean copias de los argumentos?

Ver el tema anterior Ver el tema siguiente Ir abajo 
AutorMensaje
mistes.ar
Iniciado


Barra de Salud : Su salud está al 100% - Este usuario no ha recibido infracciones

Mensajes Mensajes : 2
Reputación Reputación : 0
Monedas de oro : 8
Monedas de Platino : 0 ¿Las funciones crean copias de los argumentos? Empty

Inventario :
¿Las funciones crean copias de los argumentos? Empysl10 ¿Las funciones crean copias de los argumentos? Empysl10 ¿Las funciones crean copias de los argumentos? Empysl10
¿Las funciones crean copias de los argumentos? Empysl10 ¿Las funciones crean copias de los argumentos? Empysl10 ¿Las funciones crean copias de los argumentos? Empysl10

¿Las funciones crean copias de los argumentos? Empty
Mensaje(#) Tema: ¿Las funciones crean copias de los argumentos? ¿Las funciones crean copias de los argumentos? Clock10Dom Mayo 26, 2019 2:29 pm

Perdón la pregunta básica, hace poco estoy empezando a leer sobre Jass. Creando una función simple para detectar si una habilidad se pudo lanzar me surgió una duda con respecto a leaks.

Tengo esta función..

[JASS]
function Recibo_Punto takes location p returns nothing
endfunction
[/JASS]

Tengo este Trigger...

[GUI]
Detonador sin nombre 001
   Acontecimientos
   Condiciones
   Acciones
       Set Punto = (Random point in (Playable map area))
       Custom script:   Recibo_Punto(udg_Punto)
       Custom script:   call RemoveLocation(udg_Punto)

[/GUI]

Mi duda es: Se crea una copia que debería nullear dentro de la función ('p') o con el custom script en el detonador alcanza?

Gracias..
Volver arriba Ir abajo
Marcos_M

Marcos_M


Barra de Salud : Su salud está al 100% - Este usuario no ha recibido infracciones

Mensajes Mensajes : 3205
Reputación Reputación : 550
Monedas de oro : 9987
Monedas de Platino : 0 ¿Las funciones crean copias de los argumentos? Empty

Inventario :
¿Las funciones crean copias de los argumentos? Empysl10 ¿Las funciones crean copias de los argumentos? Empysl10 ¿Las funciones crean copias de los argumentos? Empysl10
¿Las funciones crean copias de los argumentos? Empysl10 ¿Las funciones crean copias de los argumentos? Empysl10 ¿Las funciones crean copias de los argumentos? Empysl10

¿Las funciones crean copias de los argumentos? Empty
Mensaje(#) Tema: Re: ¿Las funciones crean copias de los argumentos? ¿Las funciones crean copias de los argumentos? Clock10Dom Mayo 26, 2019 3:09 pm

Primero y principal. Los argumentos de una función en JASS no pueden ser modificados mediante "set", por ejemplo, una función como la siguiente es imposible de crear:

[jass]function SetUnitNull takes unit u returns nothing
set u = null
endfunction[/jass]

Un argumento si puede ser afectado por las funciones de limpieza del editor, puedes destruir grupos y remover puntos dentro de una función cuando esa variable es un argumento de la misma. Y esto limpia el leak por ti, ya que destruye el objeto que existe en la memoria.
Cuando el argumento toma el valor de la variable, no crea una copia del objeto(handle o agent) en cuestión, sino que se copia la referencia del objeto, por lo tanto, no se están creando nuevos objetos en ningún momento, solamente se referencia al objeto de la memoria desde la función.
Volver arriba Ir abajo
 

¿Las funciones crean copias de los argumentos?

Ver el tema anterior Ver el tema siguiente Volver arriba 
Página 1 de 1.

 Temas similares

-
» la epson l355 cuando saca copias salen rayas
» Cuando Callan las Trompetas [DVDRip] (TORRENT)
» Jornada de nudismo en la Universidad Autónoma de Barcelona
» Crean unas gafas para que los profesores se comuniquen mentalmente con los alumnos
» Traje de Boba Fett

Permisos de este foro:No puedes responder a temas en este foro.
Warcraft III - WorldEditor :: Zona de Aprendizaje(Dudas) :: Jass (Detonadores)-