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

  • engineerguy

    engineerguy

    10 Ocak 2010
  • Mary Jane Tauyan

    Mary Jane Ta

    20 AĞUSTOS 2009
  • TheFlashCentre

    TheFlashCent

    22 Mayıs 2008