In Rust Sie ein Tupel mit mehr als einem Wert zurückgeben kann:
fn my_func() -> (u8, bool) {
(1, true)
}
Eine Sprache mehr als ein Wert zurückgegeben wird dies wahrscheinlich mit einem Tupel emuliert oder eine andere Datenstruktur wie in den meisten Aufrufkonventionen der Wert Rückkehr ist in nur einem Register.
Ich kann nichts über Go sagen, aber es gibt hohe Chancen, dass sie nur die multiplen Werte in einem Tupel emulieren und die Kompilierung dazu zwingen, die Renditen zu verwalten.
Ich sehe kein Problem mit Rost tun dies als dies ist, wie ocaml oder haskell (und andere) es verwaltet, und sie erzwingen Typprüfung in den Rückgabewerten (oder Tupel) so Chancen etwas schlecht geht sind gering. Die gebräuchlichste Methode zum Verwalten der Rückgabewerte ist das Dekonstruieren des Tupels in zwei oder mehr Bindungen (let a, b = tuple_2()
).
Nur meine zwei Cent, fühlen Sie sich frei, mich zu korrigieren.
die beste Lösung, ich habe es vorher nicht versucht. Es scheint, dass wir Tupel verwenden mussten, um es zu simulieren. Vielen Dank! – sunny2016
Klammern sind in Go ebenfalls erforderlich. ;) – weberc2
Nein sind sie nicht. (Er sprach über die 'Return'-Anweisung.) – Timmmm