Использование #include <boost/algorithm/string.hpp>
для сравнения std::string
с std::vector<std::string>
подталкивание :: Алгоритм :: сравнить & Const символ
std::string commandLine
std::string::size_type position
std::string delimiters[] = {" ", ",", "(", ")", ";", "=", ".", "*", "-"};
std::vector<std::string> lexeme(std::begin(delimiters), std::end(delimiters));
Проведено сравнение
while (!boost::algorithm::contains(lexeme, std::to_string(commandLine.at(position)))){
position--;
}
Формирует следующее сообщение об ошибке
Error 1 error C2679: binary '==' : no operator found which takes a right-hand operand of type 'const char' (or there is no acceptable conversion)
const char
? Я не определяю строки?
могли бы вы построить минимальную TestCase? – jrok
В приведенном выше разделе «Сравнение» находится фактический код (или тестовый файл), который сгенерировал ошибку, используя 'boost :: algorithm :: compare' – Mushy
Я имел в виду полный источник с заголовками и объявлениями, которые люди могут скопировать вставку и попробовать сами. Реальный код, например, 10 строк или что-то в этом роде. – jrok