यदि मेरे पास क्लास एट्रिब्यूट के अंदर स्विफ्ट में एक स्ट्रक्चर है और मैं स्ट्रक्चर ऑब्जेक्ट की प्रतिलिपि बनाता हूं, तो क्लास एट्रिब्यूट प्रतिलिपि या संदर्भ द्वारा पारित किया गया है?असाइनमेंट के दौरान कॉपी द्वारा पारित संरचना के अंदर त्वरित कक्षाएं हैं?
5
A
उत्तर
12
संदर्भ द्वारा उत्तीर्ण। आप इसका परीक्षण कर सकते हैं। घोषित:
class A{}
struct B { let a = A()}
तो:
let b = B()
print("A = \(unsafeAddressOf(b.a))")//0x0000600000019450
let b_copy = b
print("A = \(unsafeAddressOf(b_copy.a))")//0x0000600000019450
5
सभी गुण एक struct के कॉपी कर रहे हैं (जैसे कि आप सौंपा (=
) नया struct की इसी संपत्ति को वर्ष struct के प्रत्येक संपत्ति) जब संरचना की प्रतिलिपि बनाई जाती है, तो टाइप किए बिना।
जब आप "कक्षा विशेषता" कहते हैं, तो मुझे लगता है कि आप संदर्भ प्रकार का एक चर है। (एक वर्ग के समान नाम वाला प्रकार उन संदर्भों के संदर्भ संदर्भ को दर्शाता है जो उस वर्ग की वस्तुओं को इंगित करते हैं।) संदर्भ प्रकार (एक संदर्भ) का मान कॉपी करना एक और संदर्भ उत्पन्न करता है जो एक ही ऑब्जेक्ट को इंगित करता है। ध्यान दें कि स्विफ्ट में "ऑब्जेक्ट्स" मान नहीं हैं - कोई "ऑब्जेक्ट प्रकार" नहीं हैं - बल्कि, ऑब्जेक्ट्स हमेशा उन संदर्भों के माध्यम से छेड़छाड़ की जाती हैं जो उन्हें इंगित करती हैं।
संबंधित मुद्दे
- 1. असाइनमेंट के माध्यम से पायथन कॉपी?
- 2. क्या सी ++ कंपाइलर्स कॉपी द्वारा पारित संदर्भ पीओडी पैरामीटर द्वारा पास ऑप्टिमाइज़ करते हैं?
- 3. त्वरित समय अंतराल के लिए डेटा संरचना
- 4. संरचना असाइनमेंट या memcpy?
- 5. जावास्क्रिप्ट Arguments ऑब्जेक्ट्स पैरामीटर के असाइनमेंट द्वारा उत्परिवर्तित क्यों हैं?
- 6. रूबी 'टैप' विधि - असाइनमेंट के अंदर
- 7. संदर्भ द्वारा पारित numpy arrays हैं?
- 8. फ़ंक्शन के अंदर बैश अप्रत्यक्ष परिवर्तनीय असाइनमेंट
- 9. std :: चाल असाइनमेंट ऑपरेटर के अंदर कदम
- 10. निजी कक्षाएं अंदर नामस्थान
- 11. असाइनमेंट के दौरान कॉमा ऑपरेटर कैसे काम करता है?
- 12. कॉपी कन्स्ट्रक्टर और असाइनमेंट ऑपरेटर
- 13. जिन शर्तों के तहत कंपाइलर इम्प्लिकेट्स (कन्स्ट्रक्टर, विनाशक, कॉपी कन्स्ट्रक्टर, कॉपी असाइनमेंट) को परिभाषित नहीं करेगा
- 14. कास्ट/असाइनमेंट में असंगत संरचना प्रकार?
- 15. मॉलोक एक संरचना के अंदर एक सरणी
- 16. OpenThemeData फ़ंक्शन के लिए संभावित कक्षाएं क्या हैं?
- 17. सी ++: कॉपी कन्स्ट्रक्टर और कॉपी असाइनमेंट ऑपरेटर को कार्यान्वित करना
- 18. एक संरचना के अंदर एक समारोह
- 19. एक संरचना के अंदर गतिशील स्मृति
- 20. सी ++ कॉपी और असाइनमेंट के साथ क्यूटी प्रतिबिंब
- 21. उन्नत इंडेक्सिंग कॉपी सरणी डेटा के साथ असाइनमेंट करता है?
- 22. कोबजेक्ट की कॉपी कन्स्ट्रक्टर और असाइनमेंट को अक्षम क्यों करें
- 23. कॉपी शब्दकोश मान द्वारा
- 24. `this.props` के अंदर 'getDefaultProps()' के अंदर?
- 25. संदर्भ के द्वारा सरल प्रकारों को पारित करने के कारण?
- 26. बिट कॉपी द्वारा टाइपकास्टिंग
- 27. इस कीवर्ड के लिए संरचना मूल्य का असाइनमेंट
- 28. सी ++ पैरामीटर के रूप में आंतरिक संरचना पारित
- 29. रुबी में विधियों के अंदर कक्षाएं क्यों नहीं हो सकतीं?
- 30. पर्ल टर्नरी सशर्त ऑपरेटर समस्याओं के अंदर असाइनमेंट