Was ist der Unterschied in verschiedenen Stilen für proc Syntax in tcl?
Frage
Darf ich wissen, wie sytanx von proc affets auf seine Arbeiten. in Zusammenhang mit
-Speicher Verbrauch
-Argument vorbei
-scope von proc (lokal / global)
proc dosomething {} {
#code here
}
proc dosomething { } {
#code here
}
proc dosomething {
#code here
}
proc dosomething args {
#code here
}
proc ::dosomething {} {
#code here
}
Und so weiter .....
Lösung
Sie sind meist gleich:
Definiert einen Befehl ohne Argumente
proc dosomething {} {
#code here
}
Wie oben, definiert einen Befehl ohne Argumente
proc dosomething { } {
#code here
}
Nicht gültig ... sollte einen Fehler aus,
proc dosomething {
#code here
}
Definiert einen Befehl mit einer variablen Anzahl von Argumenten (dh varargs)
proc dosomething args {
#code here
}
Definiert einen Befehl, in der obersten Ebene Namespace, ohne Argumente (die gleiche wie die ersten beiden in den meisten Fällen)
proc ::dosomething {} {
#code here
}
Es gibt nicht so etwas wie eine lokale proc, btw. Sie können in einem Namensraum sein, aber alle Procs sind global.
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow