Mit Nanashi dem Beispiel ist der Hinweis der Fehler, wenn Sie f(g())
julia> g() = (1, 2, 3)
g (generic function with 1 method)
julia> f(a, b, c) = +(a, b, c)
f (generic function with 1 method)
julia> g()
(1,2,3)
julia> f(g())
ERROR: no method f((Int64,Int64,Int64))
nennen Dies zeigt an, dass dies das Tupel es (1, 2, 3)
als Eingabe für f
ohne Auspacken gibt. Zum Entpacken verwenden Sie eine Ellipse.
julia> f(g()...)
6
Der entsprechende Abschnitt im Handbuch Julia ist hier: http://julia.readthedocs.org/en/latest/manual/functions/#varargs-functions
weiß nicht Tupeln splatted werden können, Dank! – AJcodez
Ich bevorzuge 'f (g() ...)' über 'apply', und ich denke, das erste ist in Julia idiomatischer. –
@AJcodez: Ist es möglich, meine Antwort als die akzeptierte zu entfernen und diese stattdessen als Antwort zu markieren? Ich glaube, das ist sowieso besser. – Manhattan