ошибка: недействительная инициализация неконстантной ссылки типа 'char &' из временного типа 'char'ошибка: недействительная инициализация неконстантной ссылки типа 'char &' из временного типа 'char'
Я видел ошибку выше на большом количестве сообщений, и все же все, что я пытаюсь, не исправляет.
У меня есть следующие функции:
vector<string> splitString(const string& str, const char& ch)
{
string next;
vector<string> result;
for (string::const_iterator it = str.begin(); it != str.end(); it++)
{
if (*it == ch)
{
if (!next.empty())
{
result.push_back(next);
next.clear();
}
}
else
{
next += *it;
}
}
if (!next.empty())
{
result.push_back(next);
}
return result;
}
который принимает строку и символ и расщепляет строку, основанную на характере данного. У меня также есть следующая строка кода для вызова функции:
int main(int argc, char*argv[])
{
string value = "OK,OK,OK,FAULT,OK"
vector<string> texts = splitString(value, ',');
//Do stuff with "texts" here
}
EDIT То есть мой код в моей основной функции
Я имею ту же функцию, и тот же способ вызова функции в другой C++, которую я написал, который отлично работает, поэтому я не могу понять, почему он не работает в этом.
Любая помощь была бы принята с благодарностью. Спасибо
Это не C, пожалуйста, не пометить его как таковой –
К сожалению об этом, я подумал Я только что нажал C++ – user3307598
Не могли бы вы сделать это в реальной программе, начинающейся с 'int main()'? То, что вы вставили здесь, выглядит хорошо для меня. – Bathsheba