小编ill*_*ger的帖子

调用C++函数时,如何跳过不确定位置的几个默认参数?

英语不是我的母语;请原谅一些打字错误。谢谢。

我声明一个OLEDstream用构造函数命名的类,如下所示:

OLEDstream::OLEDstream( uint8_t        num, 
                        const uint8_t  *pins,
                        void           (*fAlarm)()  = NULL,
                        int            buffsz       = 21*5,
                        const uint8_t  *font        = u8g2_font_6x10_mr,
                        int            minx         = 0,
                        int            miny         = 11,
                        int            maxx         = 120,
                        int            maxy         = 60,
                        int            stepx        = 6,
                        int            stepy        = 11 );
Run Code Online (Sandbox Code Playgroud)

在某些情况下,我想更改 的值stepy。然而,跳过中间的默认参数是不允许的(据我所知),所以我必须在调用它时传递所有参数,即使我只想更改stepy它的默认值。

函数重载似乎是一种解决方案,但有 8 个默认参数,很难预测用户想要更改哪一个。所以我必须将该函数重载 100 多次。

针对这种情况还有其他建议、建议或编程技巧吗?

c++ parameters

1
推荐指数
1
解决办法
104
查看次数

标签 统计

c++ ×1

parameters ×1