Pracuję nad klasą zarządzania zasobami i chcę, aby użytkownik udostępnił funktorowi metodę "ReleaseResource" jako część konstruktora menedżera zasobów. Stamtąd, gdy zasób zostanie zażądany, funktor będzie dostarczony jako delter dla shared_ptr, który zwrócę, aby odpowiednia metoda została wywołana, gdy zasób nie jest już używany.Zachowanie funktorów jako zmiennych
Problem, który napotykam, wymaga ode mnie przechowywania funktora w klasie i nie jestem do końca pewien, jak to zrobić. Zazwyczaj podczas korzystania z funktor ty szablon funkcja tak:
template<class MyFunctor> MyMethod(MyFunctor f) {
f();
}
co jest dobre, jeśli masz zamiar używać funktor w zakresie tej funkcji, ale ponieważ szablon wychodzi z zakresu z funkcją jestem nie wiem, jak określić zmienną odpowiedniego typu do przechowywania funktora do późniejszego wykorzystania.
Czy ktoś może wskazać mi właściwy kierunek?
Doskonale! Właśnie tego szukałem. Dziękuję Ci bardzo! – Toji