Я пытаюсь создать конструктор, который удаляет имя объекта каталога, а затем подкаталоги в каталоге и, наконец, сам каталог. Однако линия delete [] *subDirectories
вызывает segfaults всякий раз, когда используется.Как удалить пустой массив объектов?
Подкаталоги выделяются
subDirectories[subDirectoryCount++] = new Directory(arguments[1], umask, time, this);
Directory::~Directory()
{
delete [] name;
for (int i = 0; i < subDirectoryCount; i++)
delete subDirectories[i];
delete [] *subDirectories;
}
'delete [] subDirectories'. Убедитесь, что 'subDirectories' был создан с помощью' new [] ', иначе у вас есть неопределенное поведение. – 0x499602D2
Если C++ должен окончательно избегать массива стилей C и использовать std-контейнеры, такие как ['std :: vector'] (http://en.cppreference.com/w/cpp/container/vector) – NetVipeC