Ich schreibe einen Proc, um einen Header in einer Ausgabedatei zu erstellen.Wie kann ich sicher mit optionalen Parametern umgehen
Momentan braucht es einen optionalen Parameter, der ein möglicher Kommentar für den Header ist.
Ich habe Codierung dies als ein einzelnen optionalen Parameter endete
proc dump_header { test description {comment = ""}}
aber würde gerne wissen, wie ich den gleichen mit args erreichen kann
proc dump_header { test description args }
Es ist ganz einfach für args zu überprüfen sein ein einzelner leerer Parameter ($ args == ""), aber geht nicht gut, wenn mehrere Parameter übergeben werden - und ich brauche sowieso die negative Prüfung.
Was möchten Sie tun, wenn Ihr Proc mit mehr als 3 Argumenten aufgerufen wird: dump_header mytest mydesc {Ein Kommentar} somethingselse? Behandle etwas als einen anderen Kommentar, verarbeite es anders? –
Es ist falsch, $ args mit einer leeren Zeichenfolge zu vergleichen. Argumente ist eine Liste, keine Zeichenfolge. –
Nun, es ist nicht per se falsch, da es eine String-Darstellung erstellen wird, aber dies ist möglicherweise unnötig, wenn Sie es als eine Liste sowieso behandeln wollen –