char til string - rydde op
Hej Eksperter :)Jeg sidder lige og leger lidt med at konverterer char* til en std::string men jeg er kommet lidt i tvivl om hvordan std::string rydder op efter sig selv.
Hvis man gøre f.eks som nedenstående:
char* buffer = (char*)malloc(size);
std::string str(buffer);
Hvordan bliver buffer free'ed?
Min umiddelbare idé er at free buffer efter at laved str, da jeg syntes at læse at std::string har en copy constructor. Så ville jeg mene at den laver en kopi af buffer og derefter ville det være muligt at rydde op.
Men det kan man ikke. For så er bliver strengens data væk?
Hvordan ryder man op efter ovenstående?