У меня есть вектор с типом char;Как удалить элемент из вектора <char>?
vector<char> a_chars;
и содержит 6 символов, но 3 из них являются дубликатами. Как удалить дубликат char? Вот мой текущий код и оно не компилировать:
for(int i = 0; i < a_chars.size(); i++)
{
char current = a_chars.at(i);
for(int j = i+1; j < a_chars.size(); j++)
{
if (current == a_chars.at(j))
{
a_chars.erase[j];
}
}
}
здесь ошибка компиляции: «C: недействительные типы„[INT]“для массива подстрочный |»
EDIT: Также я пробовал с a_chars.erase(j)
и a_chars.erase(a_chars.at(j)
и все еще имел ошибку компиляции.
ошибка в этой строке «a_chars.erase [j];» – AleksandarAngelov
Вы знаете, что ['std :: vector :: erase'] (http://en.cppreference.com/w/cpp/container/vector/erase) является членом * function *? –
Вам также нужно подумать о том, что произойдет, когда вы удалите элемент и как повлияет ваша индексация. –