■52555 / inTopicNo.1) |
COM のキャストについて |
□投稿者/ 雲 (25回)-(2010/08/14(Sat) 21:25:31)
|
分類:[C/C++]
Windows Imaging Component を使ってみようと、いろいろと、試していますが COM のキャストがわからなくなってしまいました。
具体的には、IWICBitmap を IWICBitmapSource へキャストをしたいのですが、 単純に、
IWICBitmap *bitmap = (何か代入);
としてあったときに、
(IWICBitmapSource)bitmap
などとして良いのでしょうか?
(※)↓ココをみると、IWICBitmap は、IWICBitmapSource を継承していると書いてあるので、C++の継承から判断すると正しいような気がします(Inside COM を斜め読みした感じではダメとはかかれていないような)。 http://msdn.microsoft.com/en-us/library/ee719675(v=VS.85).aspx
あと、もし、これが正しいとして、
_COM_SMARTPTR_TYPEDEF( IWICBitmap, __uuidof(IWICBitmap) );
で、_com_ptr_t を使っているときにも、単純にIWICBitmapSourceにキャストして良いのでしょうか? (何となく、こちらはReleaseを呼べなくなるのでダメな感じがします。IWICBitmapSourcePtr へキャストすればよい?)
よろしくお願いします。
|
|