Avatar ·

Rust में इटरेटर के तत्वों को फिक्स्ड-साइज़ ऐरे में कैसे इकट्ठा करें?

सभी को नमस्ते! मैंने हाल ही में Rust सीखना शुरू किया है और एक समस्या का सामना किया है जो बहुत सरल लगती है, लेकिन मुझे सही समाधान नहीं मिल रहा है।

मेरे पास एक iterator है जो संख्याओं का एक क्रम लौटाता है। मैं इन सभी संख्याओं को एक array [i32; N] में इकट्ठा करना चाहता हूँ, जहाँ N compile time पर ज्ञात होता है। उदाहरण के लिए, मैं एक फ़ंक्शन लिख रहा हूँ जो numbers का एक slice लेता है और पहले 5 तत्वों का एक array लौटाता है:

fn first_five(data: &[i32]) -> [i32; 5] {
    data.iter().take(5).collect() // काम नहीं करता!
}

Compiler एक error देता है: the trait bound `[i32; 5]: FromIterator<&i32>` is not satisfied। मैं समझता हूँ कि collect() Vec जैसे collections के साथ काम करता है, लेकिन इसे arrays के साथ कैसे काम करवाया जाए?

मैंने कोशिश की