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

  • Dylan Dubay

    Dylan Dubay

    10 Temmuz 2013
  • GoogleTechTalks

    GoogleTechTa

    15 AĞUSTOS 2007
  • xXGAMERrs_Xx

    xXGAMERrs_Xx

    31 Temmuz 2014