Hello,
I'm trying to replicate a template I've used before with a member function, and it isn't going very well. The basic form of the function is
template<class T>
T Convert( HRESULT (*Foo)(T*))
{
T temp;
Foo(&temp); //Throw if HRESULT is a failure
return temp;
}
HRESULT Converter(UINT* val)
{
*val = 1;
return S_OK;
}
int _tmain(int argc, _TCHAR* argv[])
{
std::cout << Convert<UINT>(Converter) << std::endl;
return 0;
}
For the life of me, I can't get this to work with a member variable. I've read up on their syntax, and I can't seem to figure out how to make it work with templates.
The class would be something similar to
class TestClass
{
HRESULT Converter(UINT* val)
{
*val = 1;
return S_OK;
}
}