SORU
15 NİSAN 2012, Pazar


Std::max_element kullanarak bir vektör<çift>

std::min_element std::max_element çiftler bir vektör içinde min ve max unsurları dönmek için kullanmaya çalışıyorum. Benim derleyici şu anda onları kullanmaya çalışıyorum nasıl sevmez ve hata iletisi anlamıyorum. Elbette min/maks bulmak için kendi prosedürü yazabilirim, ama işlevleri nasıl anlamak istiyorum.

#include <vector>
#include <algorithm>

using namespace std;

int main(int argc, char** argv) {

    double cLower, cUpper;
    vector<double> C;

    // code to insert values in C not shown here

    cLower = min_element(C.begin(), C.end());
    cUpper = max_element(C.begin(), C.end());

    return 0;
}

Burada derleyici hata:

../MIXD.cpp:84: error: cannot convert '__gnu_cxx::__normal_iterator<double*, std::vector<double, std::allocator<double> > >' to 'double' in assignment
../MIXD.cpp:85: error: cannot convert '__gnu_cxx::__normal_iterator<double*, std::vector<double, std::allocator<double> > >' to 'double' in assignment

Birisi yaptığım çok yanlış bir açıklayabilir mi?

CEVAP
15 NİSAN 2012, Pazar


min_element max_element kullanımına, değerleri döndürür. *min_element... *max_element... gerekir.

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Digital Bounds

    Digital Boun

    19 Temmuz 2013
  • Garrett Müller

    Garrett Mül

    26 HAZİRAN 2009
  • IGN

    IGN

    19 EYLÜL 2006