परीक्षण इस निम्नलिखित के अनुसार:सी ++ यह सदस्य फ़ंक्शन पॉइंटर कैसे नहीं है?
std::cout << std::is_member_function_pointer<int (A::*)()>::value << std::endl;
सही का आकलन:
std::cout << std::is_member_function_pointer<int A::*()>::value << std::endl;
सदस्य समारोह सूचक है, लेकिन नियमित रूप से समारोह, इस जबकि नहीं है। मैंने gcc & msvc दोनों के साथ प्रयास किया। इन दो घोषणाओं के बीच क्या अंतर है? क्या ये परिणाम सही हैं? A::*
के आसपास कोष्ठक क्यों महत्वपूर्ण हैं?
ऑपरेटर प्राथमिकता। क्षमा करें मैंने पहली बार इस टिप्पणी को एक व्यंग्यात्मक प्रश्न के रूप में पोस्ट किया था। अभी तक कोई कॉफी नहीं :(उम्मीद है कि मदद करता है। ध्यान दें कि सी ++ व्याकरण केवल व्याकरण नियमों के परिणामस्वरूप प्राथमिकता * * को परिभाषित करता है। लेकिन कुल मिलाकर एक प्रभावी प्राथमिकता है। –
प्राथमिकता के साथ भी, int A :: *() वास्तव में क्या मतलब है? –
मुझे एक ऐसे फ़ंक्शन की तरह दिखता है जो सदस्य सूचक देता है। – user2357112