이 페이지에서

핵심 내부 구조

Qt는 주로 Qt Core 모듈에서 유래한 풍부한 기본 지원 기능을 포함하고 있습니다. Qt는 이러한 지원 기능을 활용하여 더 높은 수준의 UI 및 애플리케이션 개발 구성 요소를 제공합니다. 다음 주제에서는 가장 중요한 지원 기능을 설명하고, Qt에서 아직 제공되지 않는 특수한 기능을 구현하기 위해 이를 사용하는 방법을 보여줍니다.

객체, 속성 및 이벤트

QObject 클래스는 Qt 객체 모델의 기반을 형성하며, 많은 Qt 클래스의 부모 클래스입니다. 객체 모델은 런타임에 객체 내의 속성과 메서드를 검사, 조작 및 호출할 수 있게 해주는 메타 객체 시스템과 같은 다양한 메커니즘을 도입합니다. 또한 이 클래스는 ` QObject` 기반 객체 간의 저수준 통신 방식인 Qt 이벤트 시스템의 토대가 되기도 합니다. 또 다른 고수준 통신 방식은 Qt의 시그널 및 슬롯 메커니즘을 통해 제공됩니다.

또한, ` QObject `는 ` QObject::startTimer()`를 통해 간단한 타이밍 메커니즘을 제공합니다. 또는 ` QTimer ` 클래스는 타이머를 위한 고수준 인터페이스를 제공합니다.

컨테이너 클래스

컨테이너는 인스턴스가 다른 객체들의 모음으로 구성된 데이터 구조입니다. 컨테이너의 예로는 동적 배열, 큐, 연결 리스트, 연관 배열 등이 있습니다. Qt는 메모리 내 데이터를 구조화하기 위한 범용 템플릿 기반 컨테이너 클래스 세트를 제공합니다.

자세한 내용은 컨테이너 클래스 전체 목록을 참조하십시오.

국제화

Qt는 표시 가능한 텍스트 문자열의 인코딩에 유니코드를 사용합니다. 유니코드는 전 세계에서 일반적으로 사용되는 모든 문자 체계를 지원하며, 크로스 플랫폼 개발에 이상적입니다. 또한 Qt의 강력한 국제화 시스템을 활용하면 하나의 코드 기반으로 다양한 언어를 무제한으로 지원하는 애플리케이션을 개발할 수 있습니다.

Qt에서의 프로세스 간 통신

Qt는 프로세스 간 통신을 지원하기 위해 여러 클래스를 제공합니다. 또한 ` QProcess ` 클래스를 사용하여 외부 프로세스를 실행하고 관리할 수도 있습니다.

스레딩

Qt는 스레드와 병렬화된 코드를 안전하고 플랫폼에 구애받지 않는 방식으로 관리할 수 있는 기능을 제공합니다.

자세한 내용은 Qt의 멀티스레딩을 참조하십시오.

Qt의 C++20 지원

Qt는 Qt 6.0부터 C++17을 지원해 왔습니다. 그러나 새로운 언어 기능에 대한 지원을 제공하기 위해 지속적으로 노력하고 있습니다.

플랫폼 지원

Qt를 사용하면 플랫폼에 구애받지 않는 코드를 작성할 수 있으며, 동일한 코드 베이스를 변경 없이 다양한 플랫폼에 대해 컴파일하고 배포할 수 있습니다. 플랫폼별 기능을 사용하거나 시스템 라이브러리와 통합해야 하는 경우에도 Qt는 이에 대한 솔루션을 제공합니다.

Qt는 Qt Platform Abstraction(QPA)을 사용하여 대상 플랫폼의 윈도우 시스템과 통합됩니다. QPA는 윈도우 시스템을 추상화한 것으로, 이를 통해 Qt를 새로운 플랫폼으로 쉽고 빠르게 이식할 수 있습니다. Wayland 프로토콜이 바로 그러한 시스템 중 하나입니다. Qt는 임베디드 하드웨어에서 경량 윈도우 시스템인 Wayland와 함께 사용되어 다중 프로세스 그래픽 사용자 인터페이스를 지원할 수 있습니다.

Qt 플랫폼 추상화는 Qt의 플러그인 시스템을 사용합니다. 이 플러그인 시스템은 특정 영역(예: 새로운 이미지 형식 지원 추가, 데이터베이스 드라이버 등)에서 Qt를 확장하고, 타사 플러그인을 지원하는 사용자 정의 확장형 Qt 애플리케이션을 작성할 수 있는 API를 제공합니다.

© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.