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

  • HereWeStayKings

    HereWeStayKi

    3 NİSAN 2013
  • Mindy

    Mindy

    20 NİSAN 2006
  • Sali Kaceli

    Sali Kaceli

    24 ŞUBAT 2009