संभव डुप्लिकेट:
Sort list using stl sort function
why only std::list::sort()?std :: का उपयोग कर std :: सूचियों छँटाई तरह
मेरा प्रश्न कर सकते हैं हम प्रकार दो std :: एसटीडी का उपयोग करके सूचियां है प्रकार :: समारोह? मेरे पास 2 स्ट्रिंग सूचियां हैं
std::list<std::string>list1, list2;
.....//entering values to list
std::sort(list1.begin(), list1.end());
std::sort(list2.begin(), list2.end());
जबकि मैं इन सूचियों को सॉर्ट कर रहा हूं, मुझे त्रुटि मिल रही है। मैंने std :: वेक्टर के साथ प्रयास किया, इस समय सॉर्ट काम करता है।
त्रुटि है
तरहC: \ Program Files (x86) \ माइक्रोसॉफ्ट विजुअल स्टूडियो 10.0 \ कुलपति \ \ xutility (1158) शामिल हैं: की घोषणा देख 'std :: ऑपरेटर -' 1 > सी: \ प्रोग्राम फ़ाइलें (x86) \ माइक्रोसॉफ्ट विजुअल स्टूडियो 10.0 \ वीसी \ शामिल \ एल्गोरिदम (3642): त्रुटि C2784: '_Base1 :: difference_type std :: ऑपरेटर - (कॉन्स std :: _ Revranit < _RanIt, _Base> &, कॉन्स std :: _ Revranit < _RanIt2, _Base2> &) ' ' const std :: _ Revranit के लिए टेम्पलेट तर्क को कम नहीं कर सका < _RanIt, _Base> & एसटीडी ' से' :: _ List_iterator < _Mylist> ' 1> 1> के साथ [ 1> _Mylist = std :: _ List_val> 1>]
मुझे पता करने के लिए है कि केवल std :: सॉर्ट सूचियों का समर्थन करता है?
अधिभार <अपनी वस्तु के लिए ऑपरेटर (यदि वह पहले से परिभाषित नहीं है) और प्रयोग std :: प्रकार:
हालांकि,
std::list
एक सदस्य समारोहsort
कि यह सॉर्ट जाएगा। – Martol1niसंभावित डुप्लिकेट [क्यों केवल std :: list :: sort()?] (Http://stackoverflow.com/questions/7996116/why-only-stdlistsort) और [एसएलएल सॉर्ट फ़ंक्शन का उपयोग करके सॉर्ट सूची] (http://stackoverflow.com/questions/2432857/sort-list-using-stl-sort- कार्यक्षमता) –
@ मार्टोल 1ni: यह 'std :: string' है। 'ऑपरेटर <'परिभाषित किया गया है, लेकिन यह मदद नहीं करेगा। –