я следующий код:указатель приводится к указателю, как LPVOID *
IShellLink* psl;
HRESULT hres = CoCreateInstance(
CLSID_ShellLink,
NULL,
CLSCTX_INPROC_SERVER,
IID_IShellLink,
(LPVOID*)&psl);
Он правильно составлен. Но мне нужно заменить (LPVOID*)&psl
на *_cast
. Какую роль я должен использовать?
static_cast<LPVOID*>(&psl)
генерирует ошибку (в MSVC 2013).
Будет ли правильным использовать reinterpret_cast<LPVOID*>(&psl)
?
'reinterpret_cast' по существу эквивалентен C-style cast. Поэтому, если вы намерены использовать его, просто убедитесь, что знаете, что делаете. –
@barakmanos есть ли способ сделать это при помощи 'static_cast'? – vladon
Вы можете сделать 'static_cast (static_cast (& psl))'. –