Нет соответствующей функции для std :: find () в eclipse. Прекрасно работает в XCode

0

Я нахожусь в scratcher головы затмения. Я пытаюсь проверить, есть ли определенная строка в std :: vector, называемом multipayername. Я вызываю

 if (std::find(multiplayernames.begin(), multiplayernames.end(), username) == multiplayernames.end())
{
//blah blah
}

для этого, который отлично работает в XCode, но дает мне

no matching function for call to
'find(std::vector<std::basic_string<char> >::iterator,
std::vector<std::basic_string<char> >::iterator, std::string&)

ошибка в затмении. Я предполагаю, что это проблема с настройкой Eclipse.

В настоящее время у меня есть

APP_STL: = gnustl_static

в application.mk, и я использую ndk8b для XCode и Eclipse. Что еще мне нужно исправить, чтобы заставить это работать?

  • 1
    Вы включили необходимые файлы заголовков (а именно: <algorithm> , <vector> , <string> )?
Теги:
vector

2 ответа

2
Лучший ответ

Вам нужно будет включить заголовок, объявляющий std::find

#include <algorithm>
  • 0
    /вздох. Я не думаю, что когда-либо поймал бы это самостоятельно. Спасибо.
2

Вероятно, вам не хватает заголовка. Теперь реализации могут косвенно включать один заголовок из другого, что означает, что XCode может включать заголовок, даже если вы не сделали этого явно.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню