//声明和实现放在一起
class MainWindow : public QMainWindow
{
Q_OBJECT
public:
explicit MainWindow(QWidget *parent = 0){//...
}
~MainWindow(){//...
}
template<typename Func>
void setText(Func func)
{
//...
} };
//声明和实现分放在.h和.cpp文件中
class MainWindow : public QMainWindow
{
Q_OBJECTpublic :
explicit MainWindow(QWidget *parent = 0);
~MainWindow();
template<typename Func>
void setText(Func func);
private slots:
void slotBtnClicked();}
template<typename Func>
void MainWindow::setText(Func func)
{
func();
}
void MainWindow::slotBtnClicked()
{
setText([&](){ ui->label->setNum(m_iValue++);});
}
//其实代码不难理解,贴出来只是为了提醒自己和新人们注意细节。