में मैं की तरह एक वर्ग :: हैस्टेटिक समारोह कॉल गैर स्थिर समारोह सी ++
Class Test
{
public:
void Check(){//dosomething};
static void call(){//I want to call check()};
};
क्योंकि कॉल() एक स्थिर सदस्य है, तो यह गैर स्थिर कार्यों कॉल नहीं कर सकते, तो मैं का उपयोग करने के बारे में सोच कॉल() में चेक() टेस्ट पॉइंटर बनाना है और फिर चेक() पर इंगित करना है, लेकिन मुझे लगता है कि यह अच्छा नहीं है, क्या ऐसा करने का एक बेहतर तरीका है? मैं स्थिर फ़ंक्शन में सभी चीजों को फिर से लिख सकता हूं, इसलिए मुझे फिर से चेक() को कॉल करने की आवश्यकता नहीं है, लेकिन मैं जो चाहता हूं उसे कोड() में कोड का पुन: उपयोग करना है और दोहराए गए कोड से बचें।
यह स्पष्ट नहीं है कि आप क्या करने का प्रयास कर रहे हैं।आप भाषा के साथ इसके चारों ओर हैक करने के लिए लाखों तरीकों से आ सकते हैं, लेकिन आखिरकार आप इस स्थिति में कारण यह है कि आपकी आवश्यकता का कोई मतलब नहीं है। 'कॉल' के भीतर कोई ऑब्जेक्ट संदर्भ नहीं है। आपको ऐसा क्यों लगता है कि आपको ऐसा करने की ज़रूरत है? –
क्यों एक स्थिर कार्य 'चेक' घोषित नहीं करें? –
किसी भी गैर स्थैतिक फ़ंक्शन को कॉल करने के लिए आपको 'कक्षा परीक्षण' का एक उदाहरण चाहिए (यानी 'यह' सूचक)। – mark