Memcpy zugrunde liegende Daten von STD :: Vektor von Objekten
Posted: 08 Feb 2025, 16:45
Ist das sicher oder funktioniert dies einfach an meinem aktuellen Compiler? Gibt es etwas darüber im Standard? Das Ergebnis des Floats -Vektors ist korrekt. < /P>
Code: Select all
class Color {
public:
Color(float r, float g, float b, float a) : mColor{r,g,b,a} {};
inline const float *data() const
{
return mColor;
}
private:
enum {vectorSize = 4};
float mColor[vectorSize];
};
//test
std::vector colors(2);
std::vector floats(8);
colors[0] = Color(0.1, 0.2, 0.3, 0.4);
colors[1] = Color(0.5, 0.6, 0.7, 0.8);
memcpy(floats.data(), colors.data(), 8 * sizeof(float));