SORU
22 Mart 2009, Pazar


Vektör< için alternatif;bool>

(Umarım hepimiz biliyoruz, vector<bool> tamamen bozuldu ve bir c dizisi gibi davranamayız. Bu işlevselliği elde etmek için en iyi yolu nedir? Şimdiye kadar hiç düşünmedim fikirler vardır:

  • Kullanmak yerine vector<char> Bir ya
  • Kapsayıcı bir sınıf kullanmak ve vector<bool_wrapper> var

Bu sorunu nasıl başa çıkarsınız? Bu c_array ihtiyacım var() işlevi.

Eğer c_array ihtiyacım olursa hiç bir yan soru olarak, (), eğer rasgele erişim lazım bu sorunu yaklaşım en iyi yolu nedir? yöntem Bir deque yoksa başka bir şey mi kullanmalıyım?

Düzenleme:

  • Dinamik boyutlandırma ihtiyacım var.
  • Her bool 1 bit olur, vector<bool> bilmeyenler için uzmanlaşmış. Böylece c tarzı bir dizi dönüştürmek olamaz.
  • "Kapsayıcı" bir yanlış isim biraz. sanırım Böyle bir şey düşünüyordum

Tabii ki, o zaman bir my_bool Olası uyum sorunları nedeniyle içine okumam gerekiyor :(

struct my_bool
{
    bool the_bool;
};
vector<my_bool> haha_i_tricked_you;

CEVAP
22 Mart 2009, Pazar


Eğer dizi ihtiyacın varsa std::deque kullanın, Evet.

Aksi takdirde Boost Container gibi bool, uzman olmayan bir alternatif vector kullanın.

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • eisleyhead

    eisleyhead

    11 Ocak 2006
  • Excel Functions

    Excel Functi

    4 NİSAN 2010
  • InsideBlackBerry

    InsideBlackB

    14 Aralık 2009