Si tengo una clase de la siguiente maneraEstructura de un objeto de C++ en la memoria Vs un Struct
class Example_Class
{
private:
int x;
int y;
public:
Example_Class()
{
x = 8;
y = 9;
}
~Example_Class()
{ }
};
y una estructura de la siguiente manera
struct
{
int x;
int y;
} example_struct;
es la estructura en la memoria de la example_struct
simmilar a ese en Example_Class
por ejemplo, si hago lo siguiente
struct example_struct foo_struct;
Example_Class foo_class = Example_Class();
memcpy(&foo_struct, &foo_class, sizeof(foo_struct));
foo_struct.x = 8
y foo_struct.y = 9
(es decir: ¿los mismos valores que los valores x, y en la clase_foo)?
La razón por la que pregunto es que tengo una biblioteca C++ (no quiero cambiarla) que está compartiendo un objeto con código C y quiero usar una estructura para representar el objeto proveniente de la biblioteca C++. Solo estoy interesado en los atributos del objeto.
Sé que la situación ideal sería tener un wrapper Example_class alrededor de una estructura común entre los códigos C y C++, pero no será fácil cambiar la biblioteca C++ en uso.
Sólo un comentario menor, su constructor podría (y algunos dicen que debería) escribirse así: Example_Class(): x (8), y (9) {} – Dan