ในภาษาโปรแกรม Swiftมันพูดว่า:
ฟังก์ชั่นยังสามารถนำจำนวนอาร์กิวเมนต์ที่หลากหลายมารวมกันเป็นอาร์เรย์
func sumOf(numbers: Int...) -> Int { ... }
เมื่อฉันเรียกฟังก์ชั่นดังกล่าวพร้อมกับรายการตัวเลขคั่นด้วยเครื่องหมายจุลภาค (`sumOf (1, 2, 3, 4) พวกมันถูกทำให้เป็นอาร์เรย์ภายในฟังก์ชัน
คำถาม: ถ้าฉันมีตัวเลขที่ฉันต้องการส่งผ่านไปยังฟังก์ชั่นนี้แล้ว?
let numbers = [1, 2, 3, 4]
sumOf(numbers)
สิ่งนี้ล้มเหลวด้วยข้อผิดพลาดของคอมไพเลอร์“ ไม่พบโอเวอร์โหลดสำหรับ '__conversion' ที่ยอมรับอาร์กิวเมนต์ที่ให้มา” มีวิธีเปลี่ยนอาร์เรย์ที่มีอยู่ให้เป็นรายการองค์ประกอบที่ฉันสามารถส่งไปยังฟังก์ชัน Variadic ได้หรือไม่