Ich versuche, std::vectorals charArray zu verwenden.
Meine Funktion nimmt einen leeren Zeiger auf:
void process_data(const void *data);
Bevor ich einfach diesen Code verwendet habe:
char something[] = "my data here";
process_data(something);
Welches hat wie erwartet funktioniert.
Aber jetzt brauche ich die Dynamik von std::vector, also habe ich stattdessen diesen Code ausprobiert:
vector<char> something;
*cut*
process_data(something);
Die Frage ist, wie ich den Zeichenvektor an meine Funktion übergebe, damit ich auf die Vektorrohdaten zugreifen kann (egal welches Format es ist - Floats usw.).
Ich habe es versucht:
process_data(&something);
Und das:
process_data(&something.begin());
Aber es gab einen Zeiger auf Kauderwelschdaten zurück, und dieser warnte : warning C4238: nonstandard extension used : class rvalue used as lvalue.
vector<bool>dies die Ausnahme von dieser Antwort ist (und keinen zusammenhängenden Speicher vonbools hat).