क्या Rust में मौजूदा स्ट्रक्चर को उसके सभी फील्ड्स के साथ बढ़ाया जा सकता है?
नमस्ते! मैंने C++ और Java के बाद Rust सीखना शुरू किया है, और मुझे एक समस्या आई है।
C++ में मैं ऐसा कर सकता था:
```cpp
struct Base {
int x;
int y;
};
struct Derived : Base {
int z;
};
```
और Base के सभी फील्ड्स Derived में अपने आप आ जाते थे। Java में भी क्लास इनहेरिटेंस के साथ ऐसा ही होता है।
Rust में मैंने कुछ ऐसा करने की कोशिश की:
```rust
struct Base {
x: i32,
y: i32,
}
struct Derived {
// चाहता हूँ कि यहाँ Base के x और y हों
z: i32,
}
```
लेकिन कंपाइलर एरर देता है कि मैंने x और y फील्ड्स घोषित नहीं किए हैं। मैं समझता हूँ कि Rust में क्लासिकल इनहेरिटेंस नहीं है, लेकिन मुझे एक स्ट्रक्चर के फील्ड्स को दूसरे में पुनः उपयोग करना है।
मुझे लगता है कि सभी फील्ड्स को कॉपी-पेस्ट करना बहुत बुरा अभ्यास है। सोचिए, अगर Base में 20 फील्ड्स हों और मैं 5 अलग-अलग स्ट्रक्चर बनाना चाहूँ।