सी ++ में, आपको हेडर फाइलें (.h), (.lib) फ़ाइलें और (.dll) फ़ाइलें मिलीं।विजुअल स्टूडियो अतिरिक्त निर्भरताओं का उपयोग कब करें?
दृश्य स्टूडियो में, आप तीन अलग अलग स्थानों में इन फ़ाइलों के लिए खोज करने के लिए स्थान प्रदान करते हैं:
विन्यास गुण => C/C++ => सामान्य => अतिरिक्त निर्देशिका को शामिल करें। यहां आप "शामिल" निर्देशिकाएं सूचीबद्ध करते हैं जिन्हें आप खोजना चाहते हैं और उपलब्ध कराए गए हैं।
कॉन्फ़िगरेशन गुण => लिंकर => सामान्य => अतिरिक्त लाइब्रेरी निर्देशिकाएं। यहां आप "lib" निर्देशिकाएं सूचीबद्ध करते हैं जिन्हें आप खोजना और उपलब्ध कराना चाहते हैं।
कॉन्फ़िगरेशन गुण => लिंकर => इनपुट => अतिरिक्त निर्भरताएं। यहां आप स्पष्ट रूप से उन .lib फ़ाइलों को निर्दिष्ट करते हैं जो शामिल करना चाहते हैं।
प्रश्न हैं:
Q1: आप # 1 में हेडर फाइल और # 2, क्यों में lib निर्दिष्ट है/जब तुम # 3 में कुछ भी निर्दिष्ट करना चाहते हैं?
प्रश्न 2: मैं # 3 में एक विशिष्ट डीबग या रिलीज संस्करण सहित लोगों को देखता हूं। क्या आप या तो # 3 में lib के डीबग या रिलीज़ संस्करण को निर्दिष्ट कर सकते हैं और अभी भी रिलीज़ या डीबग मोड में बना सकते हैं? आदर्श रूप से, पुस्तकालय डीबग/रिलीज का कौन सा संस्करण यहां प्रदान किया जाना चाहिए?
धन्यवाद! एक काउंटर उदाहरण, जो अभी भी मुझे भ्रमित करता है ... मैं बूस्ट पुस्तकालयों, टोकनेज़र में से एक का उपयोग कर रहा हूं। तो # 1 के लिए, मैं \ शामिल निर्देशिका का स्थान निर्दिष्ट करता हूं, और फिर मेरी .cpp फ़ाइल में, मैं बस करता हूं: # "boost/tokenizer.hpp" शामिल करें, और ऐसा करना कि मेरा प्रोग्राम सफलतापूर्वक चलता है। - प्रश्न 3: मुझे कैसे \ lib लाइब्रेरी का स्थान शामिल करना नहीं था (उदाहरण के लिए # 2 खाली छोड़ दिया गया था) और इसी तरह # 3 के लिए (उदाहरण के लिए यदि मैंने सटीक लाइब्रेरी निर्दिष्ट नहीं की है तो मैं कैसे सक्षम था उस पुस्तकालय से जुड़ने के लिए)। धन्यवाद! – user205834
@ user205834: कुछ संभावनाएं हैं। सबसे पहले, बहुत सारे बूस्ट हेडर-केवल पुस्तकालय हैं - यानी, सभी कोड शीर्षलेख में हैं, और आपको इसका उपयोग करने के लिए किसी भी चीज़ से लिंक करने की आवश्यकता नहीं है। दूसरा, पुस्तकालयों का उपयोग करने वाले हिस्सों के लिए, वे आमतौर पर लाइब्रेरी से स्वचालित रूप से लिंक करने के लिए '#pragma टिप्पणी (lib, "libname")' का उपयोग करते हैं। –