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

  • Ammine Getahun

    Ammine Getah

    21 HAZİRAN 2011
  • Fraser Raft

    Fraser Raft

    9 Mart 2010
  • tychoadragmire

    tychoadragmi

    20 Mart 2006