मैं एक वेक्टर फ़िल्टर करने की कोशिश कर रहा हूं ताकि इसमें केवल एक विशिष्ट मान हो।क्या आप भविष्यवाणी के लिए अतिरिक्त पैरामीटर पास कर सकते हैं?
उदा सुनिश्चित करें कि वेक्टर में केवल "abc" मान के तत्व शामिल हैं।
अभी, मैं इसे remove_copy_if
के साथ प्राप्त करने की कोशिश कर रहा हूं।
क्या स्टडी के एल्गोरिदम में से किसी एक का उपयोग करते समय भविष्यवाणी के लिए अतिरिक्त पैरामीटर पास करने का कोई तरीका है?
std::vector<std::string> first, second;
first.push_back("abc");
first.push_back("abc");
first.push_back("def");
first.push_back("abd");
first.push_back("cde");
first.push_back("def");
std::remove_copy_if(first.begin(), first.end(), second.begin(), is_invalid);
मैं एक विधेय के रूप में निम्नलिखित समारोह पारित करने के लिए उम्मीद कर रहा हूँ, लेकिन यह अधिक संभावना है कि यह सिर्फ वर्तमान मूल्य remove_copy_if
और अगले द्वारा जांच की जा रही की तुलना हो जाएंगे लगता है।
bool is_invalid(const std::string &str, const std::string &wanted)
{
return str.compare(wanted) != 0;
}
मुझे एहसास है कि मैं शायद इस गलत तरीके से आ रहा हूं इसलिए किसी भी सुझाव की सराहना की जाएगी!
धन्यवाद
बस सोच रहा है - आप केवल वही तत्वों के साथ वेक्टर का उपयोग कैसे करते हैं? – Zane
मैंने अपना उदाहरण जितना संभव हो उतना सरल बनाने की कोशिश की ताकि यह समझ में आया :) मैंने इसके साथ क्या किया था एक वेक्टर से तत्वों को निकालना जो एक निश्चित पैटर्न (रेगेक्स के साथ) फिट बैठता था। – noko