0

代码在这里

void A::fun()
{
    QAction* act = new QAction(this);
    QAction* act2 = new QAction(this);
    connect(act, QAction::triggered, [this, &act2]() {...; act2.setDisable(true);}
                              // crash when &act2 is used to capture the variable
                              // but it is okay using act2 to capture the variable
}

是什么原因?谢谢。

4

1 回答 1

3

即使它是一个超出范围的指针,您也正在引用,这就是复制指针起作用的原因。act2

于 2013-02-05T23:38:09.680 回答