¿Cuál es la diferencia en varios estilos para la sintaxis de proc en tcl?

StackOverflow https://stackoverflow.com/questions/1611592

  •  05-07-2019
  •  | 
  •  

Pregunta

Puedo saber cómo la sintaxis de proc afecta su funcionamiento. en el contexto de

-Memoria de consumo

-Pase de paso

- alcance de proc (local / global)

proc dosomething {} {
   #code here
}

proc dosomething { } {
    #code here
}

proc dosomething {
    #code here
}

proc dosomething args {
     #code here
}

proc ::dosomething {} {
     #code here
}

Y así sucesivamente .....

¿Fue útil?

Solución

En su mayoría son los mismos:

Define un comando sin argumentos

proc dosomething {} {
   #code here
}

Igual que el anterior, define un comando sin argumentos

proc dosomething { } {
    #code here
}

No válido ... debería lanzar un error

proc dosomething {
    #code here
}

Define un comando con un número variable de argumentos (es decir, varargs)

proc dosomething args {
     #code here
}

Define un comando, en el espacio de nombres de nivel superior, sin argumentos (igual que los dos primeros en la mayoría de los casos)

proc ::dosomething {} {
     #code here
}

No hay tal cosa como un proc local, por cierto. Pueden estar dentro de un espacio de nombres, pero todos los procesos son globales.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top