Qt Lambda表达式

#ifndef WIDGET_H
#define WIDGET_H

#include <QWidget>

QT_BEGIN_NAMESPACE
namespace Ui { class Widget; }
QT_END_NAMESPACE

class Widget : public QWidget
{
    Q_OBJECT

public:
    Widget(QWidget *parent = nullptr);
    ~Widget();

signals:
    void mySig(int);

private:
    Ui::Widget *ui;
};
#endif // WIDGET_H
#include "widget.h"
#include "ui_widget.h"
#include <QDebug>

Widget::Widget(QWidget *parent)
    : QWidget(parent)
    , ui(new Ui::Widget)
{
    ui->setupUi(this);

    connect(this, &Widget::mySig, this, [=](int i){
        qDebug() << "mySlot" << i;
    });

    emit mySig(10);
}
22:03:52: Starting ...
mySlot 10
posted @ 2022-08-01 22:06  thomas_blog  阅读(24)  评论(0编辑  收藏  举报