Hepimizin bildiği gibi (umarım) vector<bool>, tamamen bozuktur ve bir C dizisi olarak ele alınamaz. Bu işlevi almanın en iyi yolu nedir? Şimdiye kadar düşündüğüm fikirler:
vector<char>Bunun yerine a kullanın veya- Bir sarmalayıcı sınıfı kullanın ve
vector<bool_wrapper>
Siz bu sorunu nasıl çözüyorsunuz? c_array()İşlevselliğe ihtiyacım var .
Bir yan soru olarak, c_array()yönteme ihtiyacım yoksa , rastgele erişime ihtiyacım varsa bu soruna yaklaşmanın en iyi yolu nedir? Süs veya başka bir şey kullanmalı mıyım?
Düzenle:
- Dinamik boyutlandırmaya ihtiyacım var.
- Bilmiyorum olanlar için,
vector<bool>her şekilde uzmanlaşmıştırbool1 bit alır. Dolayısıyla, onu C tarzı bir diziye dönüştüremezsiniz. - Sanırım "sarmalayıcı" biraz yanlış bir isim. Bunun gibi bir şey düşünüyordum:
Elbette, my_boololası hizalama sorunları nedeniyle aşağıdakileri okumam gerekiyor :(
struct my_bool
{
bool the_bool;
};
vector<my_bool> haha_i_tricked_you;