Avatar ·

Rust में एक फंक्शन कैसे लिखें जो iterator लेता है?

सभी को नमस्ते! मैं Rust में नया हूँ और एक फंक्शन लिखने की कोशिश कर रहा हूँ जो विभिन्न स्रोतों से संख्याओं के अनुक्रम को प्रोसेस कर सके: vector से, range से, file से आदि। दूसरी भाषाओं में मैं बस array या list पास कर देता था, लेकिन Rust में, जैसा कि मैंने समझा, iterators का उपयोग करना सामान्य है। समस्या यह है कि मैं समझ नहीं पा रहा हूँ कि parameter के type को सही तरीके से कैसे घोषित करूँ। मैंने कुछ इस तरह लिखने की कोशिश की: ```rust fn sum_squares(items: Iterator) -> i32 { items.map(|x| x * x).sum() } fn main() { let vec = vec![1, 2, 3, 4, 5]; println!("{}", sum_squares(vec.iter())); } ``` लेकिन compiler error देता है: "error[E0277]: the size for values of type `dyn Iterator` cannot be known at compilation time"। मैं समझता हूँ कि यह किसी तरह traits और stack में sizes से संबंधित है।