Классы-оболочки Win API для дескрипторов

Написать класс-оболочку для дескриптора, который передается только по значению, относительно легко. Я пытаюсь определить, как лучше всего инкапсулировать дескрипторы, которые необходимо передавать по адресу.

Например, написать оболочку для чего-то вроде SC_HANDLE , которое передается по значению в QueryServiceConfig () не так уж и сложно. Можно либо реализовать функцию-член, такую ​​как .GetHandle () , либо реализовать operator () .

Проблема (по крайней мере для меня) заключается в функциях API, таких как RegOpenKeyEx ( ) , которому нужен адрес HKEY .

Я читал этот оператор перегрузки, и это вообще плохая идея. Каков рекомендуемый способ сохранить инкапсуляцию (или как можно большую ее часть) и особенно сбор ресурсов, разрешая доступ к функциям API?

7
задан Johann Gerell 20 April 2011 в 23:50
поделиться