Здравствуйте, LazyKarlson, Вы писали:
LK>Откуда ноги поросли: Захотел HKEY из Win32 обернуть в unique_ptr с RegCloseKey в качестве deleter'a. Все хорошо, только в качестве типа в конструктор unique_ptr приходится передавать HKEY__, а не *HKEY или что-то подобное.
Конкретно для std::unique_ptr есть альтернатива — определенный тип pointer у класса Deleter'а
struct RegKeyDeleter
{
using pointer = HKEY;
void operator()(pointer p) const
{
RegCloseKey(p);
}
};
using unique_reg_key = std::unique_ptr<HKEY, RegKeyDeleter>;