値によってのみ渡されるハンドルのラッパー クラスを作成するのは、比較的簡単です。アドレスで渡す必要があるハンドルをカプセル化する最善の方法を判断しようとしています。
たとえば、値によってQueryServiceConfig()に渡されるSC_HANDLEのようなもののラッパーを作成することは、それほど難しくありません。.GetHandle()のようなメンバー関数を実装するか、operator()を実装できます。
(少なくとも私にとって) 問題は、 HKEY のアドレスを必要とする RegOpenKeyEx() のようなAPI関数です。
オーバーロード演算子 & は一般的に悪い考えだと読みました。API関数へのアクセスを許可しながら、カプセル化(または可能な限り多く)、特にリソースコレクションを維持するための推奨される方法は何ですか?