Я хочу сохранить список файлов/папок в виртуальном дереве/списке. Может быть, вектор или аналогичный. У кого-нибудь есть идея, как справиться с этим? У меня есть два типа элементов: папка (узел) и файл. Я должен эмулировать разные подпапки папок. Он должен быть похож на Treeview. То, что каждый узел может иметь subnode, который может иметь subnode и так fort. Мне нужно иметь возможность удалить файл или папку (и ее вложенную папку и файлы).
Может быть, ссылка или подсказка будут полезны.
Вы можете использовать полиморфизм.
class FileSystemElement{
...
}
class Folder: public FileSystemElement{
...
public:
std::list<FileSystemelement*> subfolders;
}
class File: public FileSystemElement{
...
}
а потом может быть что-то вроде этого:
class FileSystem{
public:
FileSystem();
~FileSystem();
void removeFile(std::string path);
void addFile(std::string path, void* data, size_t size);
std::list<File*> filesInFolder(std::string path);
...
private:
std::list<FileSystemElement*> filesystem;
}
Например, удаление и добавление могут выполняться с помощью стандартных методов add
и remove
std::list