我认为这不需要另一个问题,所以我正在编辑这个非常相关的问题。
我有一个代码可以通过从 char* 转换为 wchar_t* 来绘制文本,我怀疑是内存错误,因为程序内存会以疯狂的速度增长(5,000 K 到 1,500,000 分钟)。
我怀疑 mbstowcs(),但我想我现在发现了问题。
我正在使用一种相当糟糕的方式来获取颜色来绘制一般的东西。
class MainClass {
public:
ID2D1SolidColorBrush* custom_color;
ID2D1SolidColorBrush get_rgba(float r, float g, float b, float a) {
// render is a validated ID2D1RenderTarget*
render->CreateSolidColorBrush(D2D1::ColorF(r,g,b,a),&custom_color);
return custom_color;
}
};
几乎可以肯定,内存使用量的增加来自此功能。有没有更好的方法可以返回这样的自定义颜色?