escribir y leer cadena a archivo binario C ++
Tengo problemas para escribir una cadena en un archivo binario. Este es mi código:
ofstream outfile("myfile.txt", ofstream::binary);
std::string text = "Text";
outfile.write((char*) &text, sizeof (string));
outfile.close();
Entonces, trato de leerlo,
char* buffer = (char*) malloc(sizeof(string));
ifstream infile("myfile.txt", ifstream::binary);
infile.read(buffer, sizeof (prueba));
std::string* elem = (string*) buffer;
cout << *elem;
infile.close();
Simplemente no puedo hacerlo funcionar. Lo siento, estoy desesperado. ¡Gracias!