मैं निम्नलिखित स्निपेट के साथ जंग में structs की एक सरणी आरंभ करने के लिए कोशिश कर रहा हूँ:मैं कॉपी विशेषता को कैसे कार्यान्वित करूं?
enum Direction {
North,
East,
South,
West,
}
struct RoadPoint {
direction: Direction,
index: i32,
}
let data = [RoadPoint { direction: Direction::East, index: 1 }; 4]; // Initialise the array, but failed.
जब मैं यह संकलन, यह शिकायत है कि Copy
विशेषता लागू नहीं है।
<anon>:44:16: 44:67 error: the trait `core::marker::Copy` is not implemented for the type `main::RoadPoint` [E0277]
<anon>:44 let data = [RoadPoint { direction: Direction::East, index: 1 }; 4];
क्या कोई मुझे प्रतिलिपि विशेषता लागू करने के लिए सही दिशा में इंगित कर सकता है?
'# [व्युत्पन्न (क्लोन, कॉपी)] 'सही तरीका है, लेकिन रिकॉर्ड के लिए, यह जादुई नहीं है: उन लक्षणों को मैन्युअल रूप से कार्यान्वित करना आसान है, खासकर आपके जैसे आसान मामलों में:' impl निर्देश के लिए प्रतिलिपि { } निहितार्थ के लिए क्लोन {एफएन क्लोन (और स्वयं) -> स्वयं {* स्वयं}} ' – delnan
@ डेलनन अगर यह छोटा है, तो मुझे लगता है कि नीचे एक उत्तर होना चाहिए। यह पूरी तरह से मान्य है। – Shepmaster