के लिए कार्यान्वयन कहां मिल सकता है मैं C++ स्ट्रिंग क्लास के लिए कोड ढूंढ रहा हूं। इसमें क्या हेडर लागू किया गया है?मुझे std :: string
उत्तर
std::string
के लिए कोई भी कार्यान्वयन नहीं है। लेकिन आप <string>
शीर्षलेख में अपना विशेष कार्यान्वयन पा सकते हैं।
अपने सिस्टम पर यह यहां पाया जा सकता:
/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.0/include/g++-v4/bits/basic_string.h
और /usr/lib/gcc/x86_64-pc-linux-gnu/4.5.0/include/g++-v4/bits/basic_string.tcc
एक डेबियन-आधारित प्रणाली पर:
~$ locate basic_string.tcc
/usr/include/c++/4.5/bits/basic_string.tcc
/usr/include/c++/4.6/bits/basic_string.tcc
~$ locate basic_string.h
/usr/include/c++/4.5/bits/basic_string.h
/usr/include/c++/4.6/bits/basic_string.h
~$
आम तौर पर, आप जा रहे हैं basic_string
टेम्पलेट की तलाश करने के लिए , std::string
के बाद से इसका एक विशेषज्ञ है।
आप उम्मीद कर सकते हैं,
<string>
जो सबसे अधिक संभावना है जो कुछ include
निर्देशिका अपने संकलक अपने आधार के रूप में में स्थित हो जाएगा।
आप बिल्कुल सही हैं, लेकिन ध्यान रखें कि (आईआईआरसी) '
यह वीएमएस पर एक फाइल नहीं है; हेडर फाइलें 'टेक्स्ट लाइब्रेरीज़' में निहित हैं, जो कुछ भी हैं। क्यों, मुझे नहीं पता। –
यह <string>
में है। यह आपके कंपाइलर के साथ वितरित एक हेडर फ़ाइल है। इसमें अन्य (निजी) शीर्षलेख फ़ाइलें शामिल हो सकती हैं - विजुअल स्टूडियो के लिए बहुत से कार्यान्वयन "xstring" नाम की फ़ाइल में है।
दृश्य स्टूडियो के लिए जवाब के साथ ऐसा ही एक सवाल: https://stackoverflow.com/a/17205896/5520058
C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\crt\src\
संस्करण और विजुअल स्टूडियो का स्थान बदल दिया जा सकता है। यह डिफ़ॉल्ट स्थापना पथ है जहां स्रोत मिल सकते हैं।
दृश्य स्टूडियो संस्करण:
- 2005 -> 8
- 2008 -> 9
- 2010 -> 10
- 2012 -> 11
- 2013 -> 12
- 2015 -> 14
- 1. std :: string <std::string>
- 2. std :: string
- 3. std :: string
- 4. ऑपरेटर std :: string() const?
- 5. std :: string :: असाइन() segfault
- 6. std :: string को पूर्णांक
- 7. std :: वेक्टर <std::string> क्रैश
- 8. सीधे एक std :: istream से std :: string
- 9. आरसीपीपी :: CharacterVector को std :: string
- 10. std :: string को std :: vector <char>
- 11. std :: size_t बनाम size_t बनाम std :: string :: size_type
- 12. std :: array <char, N> std :: string
- 13. std :: string :: c_str और std :: string :: डेटा के बीच क्या अंतर है?
- 14. std :: fstream कक्षाएं std :: string क्यों नहीं लेती हैं?
- 15. const std :: map <boost :: tuples :: tuple, std :: string>?
- 16. बूस्ट पायथन कोई to_python कनवर्टर std :: string
- 17. एक शून्य :: वेक्टर <std :: string>
- 18. std :: string को basic_ostream में परिवर्तित करें?
- 19. std :: u16string, std :: u32string, std :: string, length(), आकार(), कोडपॉइंट्स और वर्ण
- 20. स्ट्रिंग द्वारा std :: vector <std :: pair <std :: string, bool >> को सॉर्ट करना?
- 21. क्या मुझे std :: string के लिए rvalues का उपयोग करके रचनाकार लिखना चाहिए?
- 22. सी ++ std :: मानचित्र <string, string> आदेश दिया गया है?
- 23. std :: string में वर्णों की संख्या कैसे प्राप्त करें?
- 24. सिस्टम :: स्ट्रिंग^को std :: string में कैसे चालू करें?
- 25. मुझे std :: get_temporary_buffer क्यों चाहिए?
- 26. क्या gcc 4.3 के साथ std :: string thead-safe है?
- 27. क्या यह std :: string को लिखना कानूनी है?
- 28. std :: string को const char * में कैसे परिवर्तित करें?
- 29. संदिग्ध कॉल (char * से lambda बनाम std :: string) से रूपांतरण
- 30. QString से std :: string को कैसे परिवर्तित करें?
धन्यवाद। यह केवल उस विधि का प्रोटोटाइप दिखाई देता है जिसे मैं ढूंढ रहा था: ढूंढें() वहां है "size_type ढूंढें (const _CharT * __s, size_type __pos, size_type __n) const;" – Alan
आह क्षमा करें। मैंने इसे basic_string.tcc में पाया है। धन्यवाद! – Alan
जीसीसी कार्यान्वयन यहां है: https://gcc.gnu.org/onlinedocs/gcc-4.8.1/libstdc++/api/a01053_source.htm –