У меня есть следующий фрагмент кода:динамически выделенных строк массива не удалось освобождаться
string * p = new string[8];
cout<<sizeof(p)<<endl;
free(p);
, который, кажется нормально для меня, но не удалось с:
8
a.out(85837) malloc: *** error for object 0x7fb5b3403ae8: pointer being freed was not allocated
*** set a breakpoint in malloc_error_break to debug
Abort trap: 6
Другой тест на целочисленный массив работал. Есть ли что-нибудь особенное с строкой C++?
Не читайте всю главу в этом руководстве? Нехорошо. –
@KerrekSB. –
Вы пишете 'std :: vector (8)' неправильно. –
Casey