【发布时间】:2016-04-26 19:24:57
【问题描述】:
CImage 图像不允许输入不完整类型;
我用这个:
出了什么问题?我以前从来没有叫过课。
using namespace std;
class CImage;
myfunction(hbitmap bmp)
{
CImage image;
image.Attach(bmp);
image.Save("filename.jpg");
}
【问题讨论】:
CImage 图像不允许输入不完整类型;
我用这个:
出了什么问题?我以前从来没有叫过课。
using namespace std;
class CImage;
myfunction(hbitmap bmp)
{
CImage image;
image.Attach(bmp);
image.Save("filename.jpg");
}
【问题讨论】:
class CImage; 是一个前向声明,它告诉编译器存在一个名为CImage 的类,但不知道该类是如何定义的(因此类型不完整)。
您需要包含定义CImage 类的头文件。
试试#include <atlimage.h> 而不是class CImage;
来自MSDN CImage class ducumentation:
当您使用
CImage创建项目时,您必须在包含atlimage.h之前定义CString。如果您的项目使用没有 MFC 的 ATL,请在包含atlimage.h之前包含atlstr.h。如果您的项目使用 MFC(或者如果它是支持 MFC 的 ATL 项目),请在包含atlimage.h之前包含afxstr.h。同样,您必须先包含
atlimage.h,然后再包含atlimpl.cpp。要轻松完成此操作,请将atlimage.h包含在您的stdafx.h中。
【讨论】: