Qt一些宏的用法

时间:2022-06-07 23:14:10

Qt的宏差不多都定义在D:\Qt\Qt5.4.2\5.4\mingw491_32\include\QtCore\qglobal.h里面

1、Q_DISABLE_COPY宏

定义:

#define Q_DISABLE_COPY(Class) \
 Class(const Class &) ;\ 
 Class &operator=(const Class &) ;                                                                              

使用:

#ifndef DIALOG_H
#define DIALOG_H
 
 
#include <QDialog>
 
 
namespace Ui {
class Dialog;
}
 
 
class Dialog : public QDialog
{
 Q_OBJECT
 
 
public:
 explicit Dialog(QWidget *parent = 0);
 ~Dialog();

 
 
private:
 Ui::Dialog *ui;
 Q_DISABLE_COPY(Dialog)
 
 
 
 
};
 
 
#endif // DIALOG_H                                                                                                                                                         
 
 
Q_DISABLE_COPY(Dialog)相当于添加了复制构造函数和赋值运算符的声明,从而可以禁止使用复制构造函数和赋值运算符