0

我試圖編譯在VC++ 2010下面的代碼片段調用FFmpeg的av_frame_free:(使用/ CLI標誌)從管理的VC++

AVFrame * m_Decoded = av_frame_alloc(); 
av_frame_free(&m_Decoded); 

然而,第二行拋出一個錯誤:

錯誤C2664 :'av_frame_free':無法將參數1從'cli :: interior_ptr'轉換爲'AVFrame **'

任何想法如何繞過這個問題?

謝謝!

Ofer

回答

1

你試過pin_ptr了嗎?

pin_ptr<AVFrame*> ptr = &m_Decoded; 
av_frame_free(ptr); 
+0

是的,我做了,它的工作!不過,起初我試過pin_ptr ptr =&m_Decoded;這看起來更直觀,但這並不奏效。謝謝! – oferbar

+0

pin_ptr 是指向類型*的指針 - 查看星星是如何匹配的。 –