मैंने देखा है कि अगर मैं अपने प्रोग्राम है जो g++
द्वारा संकलित किया गया पर strings
चलाने उत्पादन इसे इस्तेमाल करता है कि विभिन्न वर्गों के नाम शामिल हैं।संकलित बाइनरी में जी ++ स्टोर क्लास का नाम क्यों है?
कार्यक्रम -O3
और बिना -g
या -p
के साथ संकलित किया गया था, और बाइनरी को पट्टी करते समय कक्षा के नाम अभी भी मौजूद हैं।
मैं सोच रहा था कि क्यों यह आवश्यक है g++
बाइनरी इस जानकारी को संग्रहीत करने के लिए? क्लास नाम जो मौजूद हैं वे सभी कक्षाएं प्रतीत होते हैं जो वर्चुअल फ़ंक्शंस का उपयोग करते हैं, इसलिए मुझे संदेह है कि यह इसके साथ कुछ करने के लिए है।
संदर्भ का बिंदु: 'g ++ -c blah.o blah.cpp' का उपयोग करने से इसे निष्पादन योग्य के रूप में जोड़ने के बाद कक्षा के नाम शामिल नहीं होते हैं। – mkb