मेरे पास एक ऐसा कार्य है जिसे मैं सामान्य बनाना चाहता हूं। सीधे शब्दों में कहें, मैं एक std::string s
है कि मैं एक पार्सर पैदा करने के लिए एक std::vector<std::string>
(यह "1, 2, 3"
में के रूप में एक सूची है) के साथ की प्रक्रिया है, और समारोह एक std::vector<T>
लौटना चाहिए, T
double
या int
तक ही सीमित है।युगल/इनट्स टेम्पलेट फ़ंक्शन का वेक्टर
वेक्टर में परिवर्तित मूल्य होना चाहिए।
मैं std::transform
के अंतिम पैरामीटर के साथ अटक कर रहा हूँ, के रूप में यह std::stod
और std::stoi
के बीच स्विच करना चाहिए। जिस समाधान का मैं खोज रहा हूं वह टेम्पलेट मेटाप्रोग्रामिंग जादू है, if (std::is_same<T,int>::value)
के साथ नहीं।
कोई संकेत?
template <class T>
auto get_vector(std::string s) -> std::vector<T>
{
std::vector<T> v;
auto tmp = split(s);
std::transform(tmp.begin(), tmp.end(), std::back_inserter(v), ??);
return v;
}
'डबल' के लिए एक विशेषज्ञता जोड़ें? – alain