SORU
16 Aralık 2012, Pazar


Neden std::sabit bir erişimci haritası değil mi?

Bu bildirim için [] bir operatör std::map bu

T& operator[] ( const key_type& x );

Bir nedeni bu, değil mi?

T& operator[] ( const key_type& x );
const T& operator[] const ( const key_type& x );

Bu inanılmaz derecede yararlı herhangi bir zaman olabilir, çünkü sabit bir yöntem bir üye göster girmeniz gerekiyor.

CEVAP
16 Aralık 2012, Pazar


Bir göster operator[] belirtilen anahtar değeri döndürüryaeğer zaten mevcut değilse oluşturur bu anahtarın değeri başlatılmış eleman yeni, imkansız olurdu.

operator[] const aşırı yük, eleman işe yaramayacağını ekleme olurdu.

Soru cevaplar. Alternatifler:

İçinC 03- yineleyicisi (bu const olmayanconst find ile birleştiğinde) kullanabilirsiniz.C 11at Bu yöntemi kullanabilirsiniz.

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • jkimisyellow...ish

    jkimisyellow

    8 Temmuz 2009
  • merumputdotcom

    merumputdotc

    24 ŞUBAT 2012
  • TechShowsYou

    TechShowsYou

    3 Mart 2011