c++ - 无法从 Win32 C++ GDI+ 中的函数返回图形对象
问题描述
我正在创建一些有助于一点 GDI+ 的函数。我创建了这个函数来开始绘制在 WM_PAINT 中使用:
Graphics StartPaint(HWND win, HDC *hdc, PAINTSTRUCT *ps)
{
*hdc = BeginPaint(win, ps);
Graphics g(*hdc);
return g;
}
它给出了编译错误并将我带到“gdiplusgraphics.h”并指向这一行:
Graphics(const Graphics&);
说是私人的。
经过几次尝试,我发现问题出在函数中的 return 语句上。为什么return语句会出现这样的错误,我该如何解决这个问题?
我使用代码块。
谢谢你。
解决方案
谢谢你们。该功能现在运行良好,如下所示:
Graphics *StartPaint(HWND win, HDC *hdc,
PAINTSTRUCT *ps)
{
*hdc = BeginPaint(win, ps);
return new Graphics(*hdc);
}
推荐阅读
- vb.net - 是否可以将 TryCatch 集成到 Lambda 表达式中?
- awk - Csh 将变量作为列表获取
- git - 如何在拉/合并请求之前更新(拉)分支?
- arrays - 尝试动态重新分配二维数组时的段错误
- parse-platform - 解析云代码查询不会返回任何内容
- c++ - 如何使用按位移位运算符将字节组合成更大的整数
- javascript - JQuery如果满足两个条件输出消息
- python - OR-TOOLS - 如果某些 IntVar 的总和大于 0,如何设置 BoolVar 的值,否则为 0?
- entity-framework - EF Core Fluent API,在所有实体上设置 IsRequired 以生成非空 db 列
- python - 如何让 VSCode 的终端识别 python