Nexus86Medlem sedan okt. 20022 683 inlägg
Jag verkar ha ett litet problem vad gäller pointers. Jag får iallafall inte till det.
bool LoadBitmapIntoDC(bool bMono, LPTSTR sFileName, HDC *hDC, HBITMAP *hBMP, HBITMAP *hOldBitmap)
...
if (LoadBitmapIntoDC(false, sFileName, &m_hdcSprite, &m_bmSprite, &m_bmOldSprite))
Av denna kod får jag felmeddelandet
error C2664: 'LoadBitmapIntoDC' : cannot convert parameter 3 from 'struct HDC__ ** ' to 'struct HDC__ *'
Types pointed to are unrelated; conversion requires reinterpret_cast, C-style cast or function-style cast
Vad är felet?
Peter SMedlem sedan dec. 20025 484 inlägg
Det verkar som att du försöker skicka in adressen till en pekare istället för pekaren i sig:
if (LoadBitmapIntoDC(false, sFileName, [b]m_hdcSprite[/b], &m_bmSprite, &m_bmOldSprite))
Alternativt modifiera funktionens definition:
bool LoadBitmapIntoDC(bool bMono, LPTSTR sFileName, [b]HDC** hDC[/b], HBITMAP *hBMP, HBITMAP *hOldBitmap)
:)
Nexus86Medlem sedan okt. 20022 683 inlägg
Men hur sjutton blev m_hdcSprite en pekare? :o
HDC m_hdcSprite;
R// Denna har jag sedan kört CreateCompatibleDC till.
Peter SMedlem sedan dec. 20025 484 inlägg
Hur ser anropet till CreateCompatibleDC() ut?
:)
Nexus86Medlem sedan okt. 20022 683 inlägg
Ojdå. Jag kom på att jag inte anropar CreateCompatibleDC förrän i den funktionen jag försöker anropa så m_hdcSprite är tom. Jag har inte gjort någonting med den innan det där anropet ovan.
Nexus86Medlem sedan okt. 20022 683 inlägg
Jag fick till det. Felet låg någon annanstans. :r