मेरा तत्काल संदर्भ विंडोज प्लेटफ़ॉर्म है, हालांकि मैं एक और गुई होस्ट के लिए ui पर काम करते समय भी यही प्रश्न पूछ सकता हूं। मैं एटीएल/एमएफसी के बिना, काफी सादा सी ++ winapi में काम कर रहा हूँ। मुझे ग्लोबल्स का उपयोग करने में कोई दिलचस्पी नहीं है, बल्कि "एप्लिकेशन" डेटा के साथ "विंडो" संबंधित कार्यों को निष्पादित करने के लिए एक और अधिक स्वीकार्य अभ्यास है।विंडो क्लास से एप्लिकेशन चरों तक पहुंचने का उचित/स्वीकार्य डिज़ाइन क्या है?
मैंने एमवीवीडब्ल्यू या एमवीसी शैली पैटर्न को कार्यान्वित करने पर विचार किया है, लेकिन इससे पहले कि मैं आगे बढ़ूं, मुझे कुछ समुदाय की राय चाहिए, जो मुझे कल्पना है कि अनगिनत अनुभवी डेवलपर्स और डिजाइनर हैं।
मेरे एप्लिकेशन क्लास में विंडो सदस्य हैं। क्या विंडो क्लास को एप्लिकेशन संदर्भ के साथ डिज़ाइन किया जाना चाहिए? या इससे बेहतर तरीका है?
आपकी 'टीटीएचडी' कक्षा में सूचक थ्रेड स्थानीय संग्रहण में जाता है। कक्षा 'टीटीएचडी' में' टीएप्लिकेशन 'ऑब्जेक्ट के पॉइंटर के डेटा सदस्य के रूप में है। वैसे भी 'टीएप्लिकेशंस' ग्लोबल बनाने का अर्थ है, क्योंकि इसका कन्स्ट्रक्टर 'मुख्य' कहने से पहले कुछ प्रारंभ करने के लिए एक जगह प्रदान करता है। – lapk
मुझे पता है कि वैश्विक चर (कारण के साथ) से बचने के लिए लोगों को कई प्रयासों से गुज़रना पड़ता है, लेकिन कभी-कभी वह तंत्र है जो वास्तविकता को सर्वोत्तम रूप से दर्शाता है। यदि डिज़ाइन द्वारा 'एप्लिकेशन' का हमेशा एक और एक उदाहरण होता है, तो क्यों * इसे * वैश्विक नहीं बनाते? –
या सिंगलटन ... http://en.wikipedia.org/wiki/Singleton_pattern। लेकिन मैं अपने सभी विंडो ऑब्जेक्ट्स को मॉडल के संदर्भ में पास करना पसंद करूंगा, आपके मामले में यह एप्लीकेशन ऑब्जेक्ट AFAIU होगा। –