Получив удобство с C++ STL, я столкнулся с этой проблемой, используя список парных объектов.C++ Список пар
int count (std::string input, std::vector<std::string> screen){
std::string::iterator it = input.begin();
std::pair<std::string, int> freq[10];
std::list<std::pair<std::string,int> > freq2;
freq2.push_back(std::make_pair(*it,0)); //ERR:No instance of fn matches arg list
freq2.push_back(std::make_pair('S',0)); //ERR:No instance of fn matches arg list
freq2.push_back(std::make_pair("S",0)); //This is fine
freq[0] = std::make_pair(*it,0); //This is fine
freq[0] = std::make_pair("S",0); //This is fine
freq[0] = std::make_pair('S',0); //This is fine
return 1;
}
Как freq, так и freq2 очень похожи, кроме freq2 - это всего лишь список. Freq может принимать символы, строки и указатель итератора, и обе пары (freq, freq2) объявляются как пары. Не знаете, почему это происходит, какие-нибудь советы? Благодарю.
Редактировать: Теперь это намного больше смысла, все ответы, которые я получил, были действительно полезны, спасибо вам, ребята!
какой компилятор вы используете ......... я получаю другой набор ошибок –
Использование VC++ 11 –