
- MSVC(Microsoft Visual C++)
ex) MSVC2015 64bit - Visual Studiio 2015 컴파일러, 64비트
- MinGW(Minimalist GNU for Windows)
ex)MinGW 32-bit - GCC 기반 컴파일러, 32비트
현재 PC 환경에 맞는 것을 선택하면 된다.
class MyWidget : public QWidget
{
Q_OBJECT // ✅ 필수!
signals: // 시그널 사용
void buttonClicked();
private slots: // 슬롯 사용
void onButtonClicked();
};
Q_OBJECT를 쓰면 Qt의 메타 객체 컴파일러 (MOC, Meta-Object Compiler)가 자동으로 코드를 생성한다.
Qt의 Signal & Slot 기능을 사용하기 위해 필요로 한다.
#include "widget.h"
#include "ui_widget.h"
#include <stdlib.h>
#include <time.h>
#include <QDebug>
Widget::Widget(QWidget *parent)
: QWidget(parent)
, ui(new Ui::Widget)
{
ui->setupUi(this);
srand (time(NULL));
secretNumber = rand() % 10 + 1;
qDebug() << "Secret Number generated : " << QString::number(secretNumber);
}
Widget::~Widget()
{
delete ui;
}
void Widget::on_guessButton_clicked()
{
}
void Widget::on_startOverButton_clicked()
{
}
Widget::Widget(QWidget *parent):QWidget(parent),ui(new Ui::Widget)
1. Widget 매개변수가 (QWidget *parent)인 생성자
2. QWidget(parent) 부모 클래스 매개변수 (parent)인 생성자
3. ui(new Ui::Widget) 멤버 변수 ui를 힙에 생성한 Ui::Widget 객체의 포인터로 초기화
( +) ui(new Ui::Widget(100)) 매개변수가 포함된 생성자도 가능)
728x90
'Embedded > QT' 카테고리의 다른 글
| Qt - Dialogs (0) | 2025.11.13 |
|---|---|
| Qt - Signal & Slot (Lambda) (함수 포인터) (0) | 2025.11.10 |