मेरा लक्ष्य एक सी ++ गेम में वैश्विक स्थिरांक होना है जो मैं काम कर रहा हूं (कुछ ग्राफिक्स जानकारी और इसी तरह का प्रतिनिधित्व करने के लिए)। मेरा वर्तमान कार्यान्वयन उन सभी को एक .h में टॉस करना और उन्हें हर जगह शामिल करना है। यह काम करता है, सिवाय इसके कि हर बार जब मैं एक सेटिंग बदलता हूं, तो संपूर्ण कोड बेस को फिर से सम्मिलित किया जाना चाहिए।वैश्विक विन्यास का उचित कार्यान्वयन
तो, मेरा अगला विचार उन्हें कुछ कॉन्फ़िगरेशन txt फ़ाइल में टॉस करना था और उन्हें पार्स करना था, इस तरह सेटिंग्स बदलते समय वास्तव में कोई कोड नहीं बदला जाता था। पार्सर काफी सरल था, और मैं मूल्यों को स्थिरांक में डाल सकता था, लेकिन क्योंकि पार्सर कोड ब्लॉक था, स्थिरांक अब वैश्विक नहीं थे।
क्या इसे हल करने का कोई अच्छा तरीका है? शायद ब्लॉक में होने के बावजूद उन्हें ग्लोबल बनाने का कोई तरीका या सेटिंग्स बदलने के दौरान सब कुछ पुनः संयोजित करने से बचने के लिए?
माना जाता है कि मैं मूल रूप से इसे इस तरह के अतिरिक्त संरचनाओं के बिना करना चाहता था, लेकिन यह अधिक ओओ सम्मेलनों का पालन करता है और सामान्य रूप से बेहतर काम कर रहा है! मुझे जोआचिम के सुझाव भी पसंद आया, लेकिन यह मेरे लिए हल किया गया है, धन्यवाद! – akroy
@akroy मैं असहमत होना चाहता हूँ। आप किस प्रकार के ओओ सम्मेलन का यहां भी मतलब रखते हैं? हमारे पास एक सिंगलटन है। कुछ प्रोग्रामर दोस्त का समाधान एक सिंगलटन को शुरू करने के लिए स्पष्ट रूप से बेहतर लगता है जो मूल रूप से धीमी लुकअप के साथ 'std :: map' के आस-पास बनाया गया है और बिना किसी प्रकार की सुरक्षा के नंगे चर के साथ – IceFire
अरे IceFire! संदर्भ के लिए, यह प्रश्न 5 साल पहले से था जब मैं पहली बार प्रोग्राम सीखना था। टिप्पणी थ्रेड को देखते हुए, ऐसा लगता है कि मैंने सिद्धांत में कुछ प्रोग्रामर दोस्त का समाधान भी पसंद किया है, लेकिन इसे कंपाइलर से पहले नहीं मिला। तो, अगर यह आपके लिए संकलित करता है, तो आपके लिए अधिक शक्ति। :) – akroy