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

  • Elly Awesome

    Elly Awesome

    15 ŞUBAT 2010
  • humanHardDrive

    humanHardDri

    16 Mart 2011
  • UrAvgConsumer

    UrAvgConsume

    1 Ocak 2012