"यदि कोई कर्मचारी अपना काम अच्छी तरह से करना चाहता है, तो उसे पहले अपने औजारों को तेज करना होगा।" - कन्फ्यूशियस, "द एनालेक्ट्स ऑफ कन्फ्यूशियस। लू लिंगगोंग"
मुखपृष्ठ > प्रोग्रामिंग > किसी फ़ाइल को `std::vector` में कुशलतापूर्वक कैसे लोड करें?

किसी फ़ाइल को `std::vector` में कुशलतापूर्वक कैसे लोड करें?

2024-11-15 को प्रकाशित
ब्राउज़ करें:102

How to Efficiently Load a File into an `std::vector`?

किसी फ़ाइल को std::vector में कुशलतापूर्वक लोड करना

किसी फ़ाइल को std::vector, किसी को अनावश्यक प्रतियों और मेमोरी पुनःआवंटन से बचना चाहिए। जबकि रिज़र्व और रीड() का उपयोग करने वाला मूल दृष्टिकोण प्रत्यक्ष प्रतीत हो सकता है, रिज़र्व() अकेले वेक्टर की क्षमता में परिवर्तन नहीं करता है। दृष्टिकोण फ़ाइल सामग्री से वेक्टर को आसानी से बनाने के लिए इनपुट स्ट्रीम इटरेटर को नियोजित करता है:

#include //... std::ifstream testFile("testfile", std::ios::binary); std::vector फ़ाइल सामग्री((std::istreambuf_iterator(testFile)), std::istreambuf_iterator());

Reallocations के लिए अनुकूलन:

#include 
// ...

std::ifstream testFile("testfile", std::ios::binary);
std::vector fileContents((std::istreambuf_iterator(testFile)),
                               std::istreambuf_iterator());

#include //... std::ifstream testFile("testfile", std::ios::binary); std::vector फ़ाइल सामग्री; fileContents.reserve(फ़ाइल आकार); fileContents.assign(std::istreambuf_iterator(testFile), std::istreambuf_iterator());स्ट्रीम इटरेटर का उपयोग करके और आवश्यकता पड़ने पर मेमोरी को पूर्व-आवंटित करके, ये दृष्टिकोण std::vector में कुशल फ़ाइल लोडिंग प्रदान करते हैं।

नवीनतम ट्यूटोरियल अधिक>

चीनी भाषा का अध्ययन करें

अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।

Copyright© 2022 湘ICP备2022001581号-3