यह प्रश्न उद्देश्य-सी में कुछ वर्ग गुणों के संबंध में "मैं कैसे हूं" बल्कि "यह क्यों है" नहीं है।"अभिव्यक्ति असाइन करने योग्य नहीं है" (UIView.frame.origin) क्यों?
मैं ("अभिव्यक्ति आबंटित नहीं") समझते हैं कि नीचे दो उदाहरण की अनुमति नहीं है और एक त्रुटि में परिणाम:
self.myUIView.frame.origin.x = 50;
self.myUIView.frame.origin = CGPointMake(50,50);
और कहा कि ऐसा करने के लिए उचित तरीके से एक नया CGRect बनाने के लिए है, वांछित मान सेट करें और फिर इसे असाइन करें:
CGRect rect = self.myUIView.frame;
rect.origin = CGPointMake(50, 50);
self.myUIView.frame = rect;
मुझे यह समझना है कि यह क्यों है।
सीजीआरईटी एक संरचना है जिसमें दो structs शामिल हैं। क्या उस कार्य को रोकने के लिए प्रतिबंधों को आवंटित करने के लिए प्रतिबंधों को आवंटित किया जाता है, जो उस स्मृति को ओवरफ़्लो कर सकता है? या यह सार्वजनिक और निजी संपत्तियों से संबंधित एक सम्मेलन से अधिक है?
मुझे एहसास है कि यह मामूली/मूल प्रश्न की तरह लगता है लेकिन मुझे लगता है कि इन मौलिक प्रकार की चीजों की गड़बड़ी/बुरी समझ को दूर करना महत्वपूर्ण है।