[C con Clase] Serializar variables
Ferran Ferri
ferranferri en gmail.com
Vie Mar 12 20:53:37 CET 2010
Hola,
tengo una duda. Estoy haciendo un programa que mete clases en
archivos. Necesito una funcion que para algunos atributos (bastante
manual, algunas propiedades que yo elija y ya esta), se copien en modo
binario en un array de unsigned char.
Lo hago asi:
#include <iostream>
#include <algorithm>
using namespace std;
void toArray(unsigned char* data)
{
int a = 3;
long b = 444;
int *pA = &a;
long *pB = &b;
cout << "Valor de *pA " <<*pA <<endl;
memcpy(data,(unsigned char*)pA,sizeof(int));
data+=sizeof(int);
cout << "Valor de *pB " <<*pB <<endl;
memcpy(data,(unsigned char*)pB,sizeof(long));
data+=sizeof(long);
}
int main(){
int theArraySize = sizeof(int)+sizeof(long);
unsigned char* theData = new unsigned char[theArraySize];
fill_n(theData,theArraySize,0);
toArray(theData);
cout << "Hello World!" << endl;
delete[] theData;
return EXIT_SUCCESS;
}
Pero segun el debug los resltados no son correctos. Me podeis explicar
como hacerlo, please?
Ferran
Más información sobre la lista de distribución Cconclase