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

  • beautyexchange

    beautyexchan

    4 EYLÜL 2006
  • fufko

    fufko

    27 ŞUBAT 2006
  • MagicofRahat

    MagicofRahat

    13 Temmuz 2007