SORU
2 AĞUSTOS 2010, PAZARTESİ


C konumuna göre değer yerine vektör öğesi Silme?

vector<int> myVector;

ve bu vektör içinde ki değerleri sağlar (bu sırayla):

5 9 2 8 0 7

Eğer değeri içeren öğeyi silmek isteseydim "", ben de bunu yapardım sanırım . 8

myVector.erase(myVector.begin() 4);

Bu 4 element silmek istiyorum çünkü. Ama orada bir eleman değerini dayanarak silmek için herhangi bir şekilde""? 8 Gibi:

myVector.eraseElementWhoseValueIs(8);

Ya da sadece tüm vektör öğeleri arasında yineleme ve değerleri testi gerekiyor mu?

CEVAP
2 AĞUSTOS 2010, PAZARTESİ


Nasıl std::remove() yerine: hakkında

vec.erase(std::remove(vec.begin(), vec.end(), 8), vec.end());

Bu arada da erase-remove idiom olarak bilinir.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • MkElite

    MkElite

    13 NİSAN 2012
  • MrDevin521

    MrDevin521

    18 Temmuz 2010
  • sonia989

    sonia989

    26 EKİM 2006