Хочу создать карточную игру. Пока создаю сам движок игры и не могу реализовать функцию через вектор. Вот код:
typedef pair<</>int, int> card; // nominal and suit of card
typedef vector<</>card> Cards;
typedef vector<</>Cards> CardsPlayers;
CardsPlayers CCards;
int _TurnPlayer;
bool Core::PlayerTurn(int nominal, int suit)
{
card Card;
Card.first = nominal;
Card.second = suit;
for (auto iter = CCards[_TurnPlayer].begin(); iter < CCards[_TurnPlayer].end(); ++iter)
{
if (*iter == Card)
{
CCards[_TurnPlayer].erase(iter);
return true;
}
}
return false;
}
Функция (метод) будет искать карту игрока, которой он сделает ход, и удалять из вектора карту как указано выше. Но у меня вылетает ошибка при отладке:
Expression: vector subscript out of range"
Как можно исправить такую ошибку? Пишу на VS2012.