Как я могу стереть элемент VECTOR LIST в C ++? - PullRequest
1 голос
/ 18 апреля 2019

Мне нужно стереть элемент позиции 'k' в моем коде. Предположим, я получил '3' в K, поэтому я хочу стереть элемент позиции 3 в списке векторов.Каково решение?заранее спасибо!



using namespace std ;

int main() 
{ 
    vector<double> v1;
    vector <double>v2;
    double a ;
    for (int i=0;i<6;i++)
    {
        cout<<"Enter values :";
        cin>>a;

        v1.push_back(a);
    }
    cout<<endl;

    for (int i=0;i<6;i++)
    {
        for (int k=0;k<6;k++)
        {

                if (v1[i]==v1[k] && i!=k && k>i)
                {
                    cout<<"FOUND A REPEATING MEMBER IN VECTOR :"<<endl;
                    cout<<"repeating position: "<<k<<endl;
                    cout<<v1[k]<<endl;  
                    cout<<"ERASING MEMBER AT POSITION "<<k<<endl;
                    v1.erase(v1[k],v1.end());  //ERROR HERE!
                    cout<<"DONE"<<endl;
                }
        }
    }
}

1 Ответ

0 голосов
/ 18 апреля 2019

https://en.cppreference.com/w/cpp/container/vector/erase

iterator erase( iterator pos );

Стирает указанные элементы из контейнера. 1) удаляет элемент в поз.

Итак, если вы уверены, что k является допустимым вводом, то выполните:

 v1.erase(v1.begin() + k);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...