मैं फिलहाल सी ++ सीख रहा हूं, सी ++ प्राइमर प्लस। लेकिन मुझे बस cplusplus वेबसाइट की जांच करने और फ़ाइल हैंडलिंग के लिए थोड़ा आगे छोड़ने की तरह लग रहा था।'ब्रैकेट प्रारंभ करना'। (सी ++)
मैं जावा, PHP, दृश्य मूल से आने वाली फ़ाइल हैंडलिंग की मूल बातें जानता हूं। लेकिन मैं एक सुंदर अजीब रेखा में आया था।
ostream os(&fb);
एफबी एक फ़ाइलबफ का प्रतिनिधित्व करता है। मैं सिर्फ यह की वाक्य रचना नहीं मिलता है, लेकिन मैं यह पता लगाने सकता है कि यह रूप में एक ही है:
ostream os = &fb;
लेकिन मैं वास्तव में चर आरंभ की इस तरह के बारे में कभी नहीं पढ़ा।
तो मैं सोच रहा हूं। क्या मैं सिर्फ मूर्ख हूं और पूरे समय एक वास्तविक उपयोगी सुविधा खो रहा हूं? क्या यह पुराना शुरू करने का तरीका है? क्या यह कुछ अलग है?
अग्रिम धन्यवाद।
इस महान संदर्भ और त्वरित उत्तर के लिए धन्यवाद :) –
आपको इस पोस्ट में, यहां जवाब देना चाहिए। लिंक तब हो सकता है जब किसी और को इस प्रश्न का उत्तर देने की आवश्यकता हो, और हे, अगर आप प्रतिनिधि चाहते हैं, तो आपको वास्तविक उत्तर पोस्ट करना चाहिए। यह सामान्य एसओ सौजन्य है। – jalf
दूसरे लिंक से हल्के ढंग से paraphrased: 'ostream os = &fb;' प्रारंभिक प्रतिलिपि है, और 'os' हमेशा 'ostream' की प्रतिलिपि ctor का उपयोग करके प्रारंभ किया जाता है। ("=" सी से सिर्फ एक वाक्यविन्यास धारक है; ऑपरेटर = कभी नहीं कहा जाता है।) इस तरह की स्थिति में कॉपी निर्माण को अनुकूलित करने के लिए संकलक वास्तव में अनुमति (लेकिन आवश्यक नहीं) है। यदि यह इसे अनुकूलित करता है, तो प्रतिलिपि ctor अभी भी सुलभ होना चाहिए। ** दिशानिर्देश: ** 'ostream os (& fb)' फ़ॉर्म का उपयोग करना पसंद करते हैं। यह हमेशा काम करता है जहां 'ostream os = & fb' काम करता है, और इसमें अन्य फायदे हैं (उदाहरण के लिए, यह एकाधिक पैरामीटर ले सकता है)। –