मैं वर्तमान में उपयोग निम्नलिखित पूर्वप्रक्रमक को परिभाषित करता है, और विभिन्न ऑप्टिमाइज़ेशन सेटिंग:सी ++ एक 'बेहतर' रिलीज मोड वी.एस.
- WIN32_LEAN_AND_MEAN
- VC_EXTRALEAN
- NOMINMAX
- _CRT_SECURE_NO_WARNINGS
- _SCL_SECURE_NO_WARNINGS
- _SECURE_SCL = 0
- _HAS_ITERATOR_DEBUGGING = 0
मेरा प्रश्न क्या अन्य बातों के साथी SOers उपयोग करते हैं, जोड़, परिभाषित आदेश वी.एस. सी से एक रिलीज मोड निर्माण प्राप्त करने के लिए, ऐसा है ++ (2008,2010) संभव के रूप में performant होने के लिए?
बीटीडब्ल्यू, मैंने पीजीओ इत्यादि की कोशिश की है, यह थोड़ा सा मदद करता है लेकिन जीसीसी के साथ समानता के लिए कुछ भी नहीं आता है, मैं भी धाराओं का उपयोग नहीं कर रहा हूं, सी ++ मैं सी की तरह इसके बारे में बात कर रहा हूं लेकिन इसका उपयोग कर रहा हूं टेम्पलेट्स और STL एल्गोरिदम आदि
यह अब खड़ा के रूप में बहुत ही सरल कोड खंडों तुलना wrt प्रदर्शन में पीला जब क्या जीसीसी कहते हैं पर पैदा करता है की तुलना में एक बराबर 86 मशीन चल लिनक्स (2.6+ गिरी) 02.
का उपयोग कर साइड-नोट: मेरा मानना है कि बहुत से मुद्दे सीधे एमएस द्वारा प्रदान किए गए एसटीएल संस्करण (डिनकम) से संबंधित हैं। क्या लोग वीएस सी ++ के साथ एसटीएलपोर्ट आदि का उपयोग कर अनुभवों पर विस्तृत जानकारी दे सकते हैं।
आपको सी/सी ++, ऑप्टिमाइज़ेशन और संभवतः सी/सी ++, कोड जनरेशन के तहत अपनी प्रोजेक्ट प्रॉपर्टीज में निर्दिष्ट सेटिंग्स को भी सूचीबद्ध करना चाहिए, क्योंकि ये संकलक अनुकूलन को बहुत प्रभावित कर सकते हैं। –
उनमें से अधिकतर प्रदर्शन पर कोई प्रभाव नहीं डालते हैं, लेकिन केवल चेतावनियों को हटाते हैं या संकलन को गति देते हैं। वैसे भी, मेरे अनुभव में, वीसी ++ और जीसीसी कोड उत्पन्न करते हैं जो समान रूप से अच्छी तरह से प्रदर्शन करता है। आप कितना बड़ा अंतर देख रहे हैं, और वास्तव में प्रत्येक कंपाइलर को कैसे लागू किया जाता है? – jalf
यह प्रदर्शन से संबंधित नहीं है, लेकिन आपको 'प्रतिबंधित' पर विचार करना चाहिए।एक Win32 ऐप के लिए माइक्रोसॉफ्ट के एसडीएल से एच '। – 0xC0000022L