H5W3
当前位置:H5W3 > 其他技术问题 > 正文

C++如何设置一个有默认执行函数的……函数指针参数?

如题,
我想实现一个有默认执行函数的参数指针。类似下面这种

bool confirmExit(QString title, QString content, bool hasCheckBox = false, QString checkBoxText = "", void *callBack = **callBack**) {
if(hasCheckBox) QCheckBox *chb = new QCheckBox(checkBoxText);
//...
if(hasCheckBox && confirmed){
callBack();
}
//...
}

请问**callBack**这里怎么实现?

回答

static void DefaultCallback() {

}

bool confirmExit(
    QString title, 
    QString content, 
    bool hasCheckBox = false, 
    QString checkBoxText = "", 
    void *callBack = DefaultCallback) {
    if(hasCheckBox) QCheckBox *chb = new 
        QCheckBox(checkBoxText);
        //...
        if(hasCheckBox && confirmed){
            callBack();
        }
        //...
    }
}

不是特别理解,我的理解是你想整个lambda匿名函数

本文地址:H5W3 » C++如何设置一个有默认执行函数的……函数指针参数?

评论 0

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址