は私が機能可変引数を持つ関数を名前付き引数で呼び出すためのScala構文は何ですか?
def f(a:Int = 0, b:String = "", c:Float=0.0, foos: Foo*) { ... }
お知らせいくつかのパラメータのデフォルト引数の使用を持っていると言います。一般的に、デフォルト値を利用するために、あなたはそうのような名前のパラメータを持つ関数を呼び出す:私は一つだけfoo
でメソッドを呼び出していので
val foo = Foo("Foo!")
f(foos = foo)
この構文は動作します。しかし、私が2つ以上ある場合は、どのようなものを食べさせるべきかは分かりません。 Seq(foo1,foo2)
およびSeq(foo1,foo2):_*
は、チェックを入力しません。
foo
で電話をするにはどうすればいいですか?この場合の
// All out of foos!
f(foos = ...)
、空の括弧(f()
)で関数を呼び出すことは動作しません。
ありがとうございます!
あなたはどのスカラーですか? 2.9.2でREPLでfを定義しようとすると、私に ":9:error:' * 'パラメータのあるパラメータセクションにデフォルトの引数が与えられない " –
私は2.9.2でこれを見ているよくしかし、コンパイルしている実際のコードは2.9.1で動作しています。 – fatuhoku