看板 Flash 關於我們 聯絡資訊
假設某物件有個不定參數的方法,例如: class A { public function A() { } public function funcA(...v):void { for(var i:int=0 ; i < v.length ; i++) { trace(v[i]); } } } 如果我想用另一個類別B,也有個funcA,利用委派的方式實現,例如: classB { private var _a:A = new A(); public function B() { } public function funcA(...v):void { _a.funcA(v[0], v[1], v[2], v[3],...,v[n]); //↑照理說應該是這樣寫,但總不能在這裡寫超多的v[n]吧 } } 請問這種情況下,B裡頭的funcA該如何寫呢? 麻煩解答了 <(_ _)> -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 114.41.49.5 ※ 編輯: MagicYan 來自: 114.41.49.5 (01/25 08:49)
cjcat2266:_a.funcA.apply(v); 01/25 08:51
cjcat2266:如果是constructore就沒輒了 01/25 08:52
cjcat2266:constructor的話就只能這樣寫囉 http://0rz.tw/bG0OU 01/25 08:52
etrexetrex:不能傳陣列或物件嗎? 01/25 09:16
MagicYan:剛試了一下, 應該是 _a.funcA.apply(null,v) 01/25 10:08
MagicYan:回e大:不能,因為還是希望funcA是不定參數的function 01/25 10:08