साझा हेडर।वैश्विक स्थिरांक के लिए "स्थिर" की आवश्यकता क्यों है लेकिन बूल के लिए नहीं?
मैं यह कर सकता: जब एक से अधिक फ़ाइलों में शामिल
const bool kActivatePlayground=false;
ठीक काम करता है।
मैं ऐसा नहीं कर सकते:
त्रुटि मेंconst char * kActivePlayground = "kiddiePool";
परिणाम: डुप्लिकेट प्रतीकों।
लेकिन यह काम करता है:
static const char * kActivePlayground = "kiddiePool";
static
const char *
के लिए लेकिन const bool
के लिए नहीं की जरूरत क्यों है? इसके अतिरिक्त, मैंने सोचा कि static
आवश्यक नहीं है क्योंकि const
हमेशा static
निहितार्थ है?
स्थैतिक उस टीयू के लिए एक प्रतीक निजी बनाता है। त्रुटि से, क्या आपने सुनिश्चित किया है कि किसी अन्य फ़ाइल में कॉन्स्ट char * का कोई पुनर्वितरण नहीं है? –
यह वैरिएबल नाम – johnbakers
की एकमात्र परिभाषा है, फिर से पुन: पुन: पुन: पुन: पुन: पुन: पुन: पुन: पुन: पुन: पुन: पुन: पुन: पुन: पुन: पुन: पुन: पुनरावृत्ति है, वैसे भी 'स्थिर' शब्द का उपयोग 'स्थिर' शब्द का उपयोग भी आवश्यक नहीं होना चाहिए, जैसा कि यह नहीं है 'बूल' – johnbakers