मैं सोच रहा था कि दोनों के बीच अंतर क्या हैं। मैंने देखा कि emplace C++ 11 अतिरिक्त है। तो अतिरिक्त क्यों?सी ++ std :: वेक्टर emplace बनाम
21
A
उत्तर
84
एम्प्लेस जगह पर किसी ऑब्जेक्ट को बनाने के लिए आवश्यक तर्क लेता है, जबकि किसी ऑब्जेक्ट को सम्मिलित करता है (संदर्भ)।
struct Foo
{
Foo(int n, double x);
};
std::vector<Foo> v;
v.emplace(someIterator, 42, 3.1416);
v.insert(someIterator, Foo(42, 3.1416));
21
insert
वेक्टर में ऑब्जेक्ट्स कॉपी करता है।
emplace
वेक्टर के अंदर का निर्माण करें।
संबंधित मुद्दे
- 1. std :: सूची बनाम std :: वेक्टर पुनरावृत्ति
- 2. std :: वेक्टर बनाम सामान्य सरणी
- 3. आकार() std :: वेक्टर (सी ++)
- 4. सी ++ वेक्टर बनाम ऐरे (समय)
- 5. std :: वेक्टर और सी-शैली सरणी
- 6. सी ++ दो आयामी std :: वेक्टर सर्वोत्तम प्रथाओं
- 7. std वेक्टर सी ++ - गहरी या उथली प्रतिलिपि
- 8. सी ++ 11 और std :: वेक्टर कन्स्ट्रक्टर
- 9. सी ++ std :: वेक्टर कैसे काम करता है?
- 10. सी ++ 11 std :: वेक्टर समवर्ती वातावरण में
- 11. सी ++ वेक्टर, वापसी बनाम पैरामीटर
- 12. सी ++ push_back बनाम इन्सर्ट बनाम
- 13. सी ++ ऐरे बनाम वेक्टर प्रदर्शन परीक्षण स्पष्टीकरण
- 14. std :: वेक्टर तत्व
- 15. दोहराएं एकाधिक std :: वेक्टर
- 16. std :: वेक्टर सम्मिलन
- 17. एक std :: वेक्टर
- 18. std :: वेक्टर डालने() reallocation
- 19. सी ++ वेक्टर
- 20. std :: वेक्टर और std :: मिनट व्यवहार
- 21. std :: वेक्टर <std::string> क्रैश
- 22. C++ std :: जोड़ी, std :: वेक्टर और memcopy
- 23. std :: कॉपी और std :: वेक्टर समस्या
- 24. std :: cin.getline() बनाम std ::
- 25. एंड्रॉइड एनडीके और std :: वेक्टर
- 26. 2-आयामी एसटीएल वेक्टर सी ++
- 27. सी ++ एसटीएल मानचित्र बनाम वेक्टर गति
- 28. सी ++ - वेक्टर
- 29. वेक्टर स्पष्ट बनाम आकार बदलने
- 30. वेक्टर :: सी ++
ध्यान दें कि सी ++ 11 'डालने' में कॉपी करने की आवश्यकता नहीं है, यह भी स्थानांतरित हो सकता है। – juanchopanza
यह उल्लेखनीय है कि डालने के दौरान यदि यह एक रावलू कास्ट का उपयोग किया जाता है, तो हो सकता है। इसलिए, प्रदर्शन स्पष्टता के लिए जब भी संभव हो, इमस्थल का उपयोग करने के लिए स्कॉट मेयर की सिफारिश। – jeremyong