Hi,

c ++

我正在尝试在屏幕(或渲染目标)的 x,y 位置显示一张图片。

我也希望它默认显示在中心。

我想使用“不可能”的默认参数,例如:

Draw(int x = -1, int y = -1)

{
如果 (x = -1 且 y = -1) 则将图片绘制到屏幕中心
否则在 x,y 位置绘制图片
}

但是我想了想,如果我想在 -1,-1 处绘制并且稍微偏离屏幕,或者我想使用任意值,我就不能使用“不可能”的默认值。

目前我的方案是传入一个 bool center_image,默认值为 true。

我可以写成:

Draw (bool center_image = true, int x = -1, int y = - 1)

{
如果 (center_image) 则将图片绘制到屏幕中心
否则在 x,y 位置绘制图片
}

那么你可以不提供参数调用:

Draw(),这会居中。

或者

Draw(false, x, y) 来在 x,y 处绘制。

这看起来合理吗?是否标准?

或者我漏掉了更优雅的方法?

谢谢