मेरे पास एक प्रश्न है कि एक स्थिर वर्ग सदस्य को शामिल करने के लिए कौन सा फ़ंक्शन चुना जाता है।स्थिर वर्ग सदस्य को आरंभ करने के लिए किस फ़ंक्शन का उपयोग किया जाता है?
//Base.h
class Base
{
private:
static int count;
static int countInit()
{
return 10;
}
public:
Base()
{
}
};
//and Base.cpp
static int countInit()
{
return 0;
}
int Base::count=countInit();//member function is used.
static int local_count=countInit();//the local one in Base.cpp
चर Base::count
Base::countInit()
बजाय countInit()
Base.cpp में परिभाषित के साथ आरंभ नहीं हो जाता। लेकिन local_count
स्थानीय countInit
द्वारा प्रारंभ किया गया है। तो, मुझे आश्चर्य है, क्या इस मामले में कोएनिग लुकअप जैसे नियम हैं?
तो 'पूर्णांक बेस :: गिनती = countInit() ; सदस्य को बुलाता है? –
@LuchianGrigore, हाँ, यह करता है। मुझे पता नहीं था कि हुआ। – chris
"int बेस :: count = countInit();" आह्वान किया? स्थिर सदस्य फ़ंक्शन बेस :: countInit() गिनती केवल क्लास बेस के दायरे से countInit() द्वारा नहीं की जाती है। – lulyon