Boost :: filesystem, std :: sort: проблема с сохранением информации о проходах сортировки

я пытаюсь использоватьstd::sort на тип данных, который содержит информацию, прочитанную изboost::filesystem::dictionary_iterator, Похоже, что как алгоритм сортировки сделалn сравнения,n количество файлов в каталоге, эта информация теряется, и я в конечном итоге segfaulting. Вальгринд говорит, что яиспользуя неинициализированные значения и делая недопустимые чтения.

Как я могу изменить свойFile тип данных или алгоритмы, чтобы информация сохранялась между проходами?

#include 
#include 
#include 
#include 
#include 
namespace fs = boost::filesystem;

struct File {
    fs::path path;
    fs::file_status status;
};

bool comp(const File& a, const File& b) {
    static size_t count = 0;
    std::cout < "Compare function called " < ++count < " times" < std::endl;
    std::string a_filename = a.path.filename().native();
    std::string b_filename = b.path.filename().native();
    return a_filename.compare(b_filename);
}

int main() {
    std::vector

Ответы на вопрос(1)

Ваш ответ на вопрос