Avatar ·

#include <filename> और #include "filename" में C++ में क्या अंतर है?

नमस्ते सहकर्मियों! मैं एक शुरुआती C++ डेवलपर हूँ और एक समझ से परे बिंदु पर आ गया हूँ। ट्यूटोरियल्स और कोड उदाहरणों में, मैं हेडर फ़ाइलों को शामिल करने के दो तरीके देखता हूँ: 1. `#include ` — कोण कोष्ठक के साथ। 2. `#include "myheader.h"` — उद्धरण चिह्नों के साथ। पहली नज़र में, कोई अंतर नहीं है — दोनों विकल्प फ़ाइल को शामिल करते हैं। लेकिन मैंने देखा कि मानक लाइब्रेरीज़ (iostream, vector, string) हमेशा कोण कोष्ठक में लिखी जाती हैं, जबकि मेरी अपनी फ़ाइलें (जैसे, "myclass.h") उद्धरण चिह्नों में होती हैं। मैंने `#include "iostream"` लिखने की कोशिश की — कोड संकलित हुआ और काम किया। लेकिन `#include ` ने "file not found" त्रुटि दी। ऐसा क्यों होता है? क्या यह सिर्फ एक शैली सम्मेलन है या कोई वास्तविक तकनीकी अंतर है? मुझे विशेष रूप से इसमें दिलचस्पी है: - कंपाइलर प्रत्येक मामले में फ़ाइलों को कैसे खोजता है? - क्या चयन प्रदर्शन को प्रभावित करता है? - क्या ऐसी स्थितियाँ हैं जहाँ एक विकल्प का उपयोग करना आवश्यक है, दूसरे का नहीं? मैं अपने कोड का एक उदाहरण दे रहा हूँ: ```cpp // main.cpp #include // काम करता है