मैं वर्तमान में सी ++ के साथ वैक्टर का उपयोग कर एक आवेदन कर रहा हूं।सी ++ push_back बनाम इन्सर्ट बनाम
मुझे पता है कि पूर्व-अनुकूलन सभी बुराइयों की जड़ कैसे है।
लेकिन मैं वास्तव में उत्सुक होने में मदद नहीं कर सकता।
मैं अन्य वैक्टरों के हिस्सों को एक और वेक्टर में जोड़ रहा हूं।
a.reserve(300);
a.insert(a.end(), b.begin(), b.end());
हम कहूँगा वेक्टर एक आकार कि 300
की कभी नहीं परिवर्तन के बाद से मैं हमेशा वेक्टर
के अंत में संलग्न करना होगा यह तेजी से करने के लिए है
या वे वेक्टर के माध्यम से लूप करने के लिए तेज़ी से होंगे जो मैं जोड़ना चाहता हूं और push_back
या emplace
के साथ प्रत्येक आइटम को अलग-अलग जोड़ना चाहता हूं (अभी भी पहले से ही आरक्षित कर रहा हूं)। (अनिश्चित जो तेज है)
कोई भी इस पर मेरी सहायता कर सकता है?
"प्रभावी एसटीएल" आइटम 5: रेंज सदस्य कार्यों को उनके एकल-तत्व समकक्षों को पसंद करें – Cubbi
क्लीनर कोड के लिए जाएं, एसटीएल आपको क्या प्रदान करता है ... जब तक आपको यह नहीं करना है तब तक पुन: प्रयास न करें। ज्यादातर मामलों में कोड का पुन: उपयोग करने से इस तरह के सरल संचालन के हाथ से तैयार संस्करणों को ट्रम्प कर दिया जाएगा। उन कार्यों को दिमाग में दक्षता के साथ डिजाइन किया गया था। – eazar001
'डालने' तेज हो सकता है, या यह वही हो सकता है, लेकिन (एक गंभीर रूप से खराब लाइब्रेरी कार्यान्वयन से कम) कभी भी लूप से भी बदतर नहीं होगा। –