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

  • Adam Khoury

    Adam Khoury

    23 Ocak 2008
  • guau . .

    guau . .

    25 Ocak 2008
  • TechXCentral

    TechXCentral

    12 Temmuz 2011