Dizi std::vector
olarak kullanmaya çalışıyorum char
.
Benim fonksiyonum geçersiz bir ibre alır:
void process_data(const void *data);
Sadece bu kodu kullanmadan önce:
char something[] = "my data here";
process_data(something);
Hangi beklendiği gibi çalıştı.
Ama şimdi dinamikliği gerekir std::vector
, bu yüzden bunun yerine bu kodu denedim:
vector<char> something;
*cut*
process_data(something);
Soru, vektör ham verilerine erişebilmem için char vektörünü fonksiyonuma nasıl ileteceğim (hangi format olursa olsun - yüzer vb.)?
Bunu denedim:
process_data(&something);
Ve bu:
process_data(&something.begin());
Ama anlamsız verileri gösteren bir işaretçi döndü ve ikincisi uyarı verdi: warning C4238: nonstandard extension used : class rvalue used as lvalue
.
vector<bool>
Bu yanıtın istisnası olduğuna dikkat edin (ve bitişik bellek depolaması yokturbool
).