मैं संभव के रूप में स्थानीय रूप में चीजों को रखने की कोशिश, तो मैं वर्ग दायरे में enums डाल, भले ही वे दो वर्गों (मैं इसे कक्षा में डाल दिया है कि यह साथ "बेहतर हो जाता है"।) यह है के बीच साझा कर रहे हैं बहुत अच्छा काम किया, लेकिन मैंने हाल ही में एक ऐसे मुद्दे में भाग लिया जहां एक गोलाकार निर्भरता तब होगी जब मैं कक्षा के दायरे में enum डाल दिया।Enum scoping मुद्दों
enum कई वर्गों के लिए एक निर्माता तर्क होने जा रहा है, और कक्षा में है (और वर्ग है कि ज्यादातर समझ में आता है उस में होने के लिए) उन वर्गों में शामिल हैं। इस प्रकार, कक्षाओं के लिए कन्स्ट्रक्टर तर्क के रूप में enum का उपयोग करना संभव नहीं है क्योंकि इसका परिणाम गोलाकार निर्भरता में होगा।
बेहतर होगा सिर्फ अपने हेडर फाइल में इस enum डाल करने के लिए, और यदि ऐसा है तो, मैं हेडर फाइल में enums के सभी रखना चाहिए एक समान होना चाहिए? क्या इस मुद्दे के लिए कोई अन्य समाधान हैं (जो तार्किक हैं)?
क्या आपने घोषणाओं को आगे बढ़ाने की कोशिश की है? –
अग्रेषित घोषणाएं आपको केवल प्रकार के नाम तक पहुंचने की अनुमति देती हैं। आप इंटरफ़ेस तक नहीं पहुंच सकते हैं या इसे तत्काल नहीं कर सकते हैं या ऐसा कुछ भी नहीं कर सकते हैं। – Anonymous