2012-10-10 24 views
10

मैं कोड के एक टुकड़े में आया जो #pragma टिप्पणी (lib, "libraryname") का उपयोग करता है।सी ++ विजुअल स्टूडियो: प्रज्ञा टिप्पणी का उपयोग कर लिंकिंग

इस प्रकार का उपयोग गुण मेनू से लाइब्रेरी को जोड़ने के विरोध में क्यों है? इस उपयोग के लिए किस स्थितियों में कहा जाता है? मैं सी ++ Visual Studio 2010 का उपयोग कर विंडोज़ में हूं।

यह एक उदाहरण देखना अच्छा लगेगा जो इस प्रकार के उपयोग के लिए कॉल करता है।

उत्तर

18

लाइब्रेरी लेखक सार्वजनिक शीर्षलेख (.h) फ़ाइल में #pragma comment(lib, ...) कमांड डाल सकता है। इस मामले में, क्लाइंट को इस लाइब्रेरी को लिंकर निर्भरता सूची में जोड़ने की आवश्यकता नहीं है। कार्यक्रम में एच-फाइल को शामिल करके, ग्राहक स्वचालित रूप से आवश्यक पुस्तकालय से जुड़ा होता है।

+0

क्या मुझे इस मामले में विज़ुअल सूटूडियो परियोजना में लाइब्रेरी को शारीरिक रूप से जोड़ने की आवश्यकता है? – user1612986

+4

नहीं, लेकिन लाइब्रेरी उपलब्ध लाइब्रेरी खोज पथ – WhozCraig

+0

धन्यवाद पीटर में होना चाहिए। यह सहायक है। –

13

क्लासिक उदाहरण - पुस्तकालय के विभिन्न संस्करणों के विरुद्ध लिंक:।

#if CURRENT_VERSION >= 10 
    #pragma comment(lib, "thirdPartyLibV2.0.lib") 
#else //version < 10 
    #pragma comment(lib, "thirdPartyLibV1.0.lib") 
#endif 
2

यह भावना सब लेता जुड़े पुस्तकालय के लिए हेडर फ़ाइल स्वचालित रूप से लिया जा करने के लिए भी शामिल है कि में निहित है तुम भी कर सकते हैं #ifdef..#endif जादू आपके पर्यावरण के आधार पर सही पुस्तकालय में सशर्त रूप से लाने के लिए।

स्क्रैच से एक नई परियोजना शुरू करते समय हर कोई आपके एमएसवीसी प्रोजेक्ट का उपयोग नहीं करेगा, बस #include पर सक्षम होने और यह काम अच्छी तरह से लिखित लाइब्रेरी का संकेत है।

 संबंधित मुद्दे

  • कोई संबंधित समस्या नहीं^_^