Hi,
I have a 3rd party lib that provides various create/release functions
for various types.
They all return a pointer to the type (some are opaque some are not)
e.g. Type*.
I want to use scoped_handle with these to give me automatic release when I go out of
scope.
The problem is that the all the release functions accept as a parameter
Type**. This is, purportedly, done to that the release function
can zero the pointer.
This means that I cannot use scoped_handle as RAII, but only as a separate object defined after the
bare pointer (in the same scope).
If I define a forwarding function that accepts Type*&
and forwards to the original function (as &arg) , the code does not compile.
Any suggestions?
Thanks,
Adi