Как использовать вектор pmr с ресурсом памяти в структурах? - PullRequest
1 голос
/ 28 мая 2020

Ниже приведен фрагмент моего кода:

struct TestPMR
{
    std::vector<int> a;
    std::vector<int> b;
};

Я хотел бы использовать свой собственный ресурс памяти для векторов a и b. Что-то вроде std::pmr::new_delete_resource(). Следующий код является примером того, что именно я хотел бы реализовать:

auto mr = std::pmr::new_delete_resource();
std::pmr::vector<int> a(mr);

Приведенный выше код хорошо работает при использовании в функции, например:

void dummy_fn(){
     auto mr = std::pmr::new_delete_resource();
     std::pmr::vector<int> a(mr);
     another_dummy_fn(a);
}

void another_dummy_fn(std::pmr::vector<int> v){
...
}

Как я могу использовать то же самое внутри структура TestPMR, чтобы все экземпляры этой структуры выделяли память в данном ресурсе памяти? Я попробовал std::pmr::vector<int> a(std::pmr::new_delete_resource()), и возникла ошибка: std::pmr::new_delete_resource() is not a type name

функция typedef не является именем типа? Эта ссылка не ответила на мой вопрос.

...