- Qt 6.8
- Qt Core
- Qt Core C++ Classes
- Qt 6.8.3 Reference Documentation

# Qt Core C++ Classes

Provides core non-GUI functionality. More...

## Namespaces

Qt | Contains miscellaneous identifiers used throughout the Qt library
Qt::Literals | Inline namespace declares literal operators for Qt types
Qt::Literals::StringLiterals | Declares string literal operators for Qt types
QtFuture | Contains miscellaneous identifiers used by the QFuture class
QtJniTypes | Declares C++ types that correspond to Java types
QtLiterals | Declares literal operators for Qt types

## Classes

QAbstractAnimation | The base of all animations
QAbstractEventDispatcher | Interface to manage Qt's event queue
QAbstractEventDispatcher::TimerInfoV2
QAbstractEventDispatcherV2
QAbstractItemModel | The abstract interface for item model classes
QAbstractListModel | Abstract model that can be subclassed to create one-dimensional list models
QAbstractNativeEventFilter | Interface for receiving native events, such as MSG or XCB event structs
QAbstractProxyModel | Base class for proxy item models that can do sorting, filtering or other data processing tasks
QAbstractTableModel | Abstract model that can be subclassed to create table models
QAdoptSharedDataTag | Helper tag class
QAnimationGroup | Abstract base class for groups of animations
QAnyStringView | Unified view on Latin-1, UTF-8, or UTF-16 strings with a read-only subset of the QString API
QAssociativeIterable | Iterable interface for an associative container in a QVariant
QAtomicInt | Platform-independent atomic operations on int
QAtomicInteger | Platform-independent atomic operations on integers
QAtomicPointer | Template class that provides platform-independent atomic operations on pointers
QAtomicScopedValueRollback | Provides a QScopedValueRollback for atomic variables
QBEInteger | Platform-independent big-endian integers
QBaseIterator
QBasicTimer | Timer events for objects
QBindable | Wrapper class around binding-enabled properties. It allows type-safe operations while abstracting the differences between the various property classes away
QBitArray | Array of bits
QBluetoothPermission | Access Bluetooth peripherals
QBuffer | QIODevice interface for a QByteArray
QByteArray | Array of bytes
QByteArray::FromBase64Result | QByteArray::FromBase64Result class holds the result of a call to QByteArray::fromBase64Encoding
QByteArrayList | List of byte arrays
QByteArrayMatcher | Holds a sequence of bytes that can be quickly matched in a byte array
QByteArrayView | View on an array of bytes with a read-only subset of the QByteArray API
QCache | Template class that provides a cache
QCalendar | Describes calendar systems
QCalendar::SystemId
QCalendarPermission | Access the user's calendar
QCameraPermission | Access the camera for taking pictures or videos
QCborArray | Used to hold an array of CBOR elements
QCborError | Holds the error condition found while parsing or validating a CBOR stream
QCborMap | Used to hold an associative container representable in CBOR
QCborMap::ConstIterator | QCborMap::ConstIterator class provides an STL-style const iterator for QCborMap
QCborMap::Iterator | QCborMap::Iterator class provides an STL-style non-const iterator for QCborMap
QCborParserError | Used by QCborValue to report a parsing error
QCborStreamReader | Simple CBOR stream decoder, operating on either a QByteArray or QIODevice
QCborStreamReader::StringResult
QCborStreamWriter | Simple CBOR encoder operating on a one-way stream
QCborValue | Encapsulates a value in CBOR
QChar | 16-bit Unicode character
QChildEvent | Contains event parameters for child object events
QChronoTimer | Repetitive and single-shot timers
QCollator | Compares strings according to a localized collation algorithm
QCollatorSortKey | Can be used to speed up string collation
QCommandLineOption | Defines a possible command-line option
QCommandLineParser | Means for handling the command line options
QConcatenateTablesProxyModel | Proxies multiple source models, concatenating their rows
QConstIterator | Allows iteration over a container in a QVariant
QContactsPermission | Access the user's contacts
QContiguousCache | Template class that provides a contiguous cache
QCoreApplication | Event loop for Qt applications without UI
QCryptographicHash | Way to generate cryptographic hashes
QDataStream | Serialization of binary data to a QIODevice
QDate | Date functions
QDateTime | Date and time functions
QDeadlineTimer | Marks a deadline in the future
QDebug | Output stream for debugging information
QDebugStateSaver | Convenience class for custom QDebug operators
QDir | Access to directory structures and their contents
QDirIterator | Iterator for directory entrylists
QDirListing | STL-style iterator for directory entries
QDirListing::DirEntry
QDirListing::sentinel
QDynamicPropertyChangeEvent | Contains event parameters for dynamic property change events
QEasingCurve | Easing curves for controlling animation
QElapsedTimer | Fast way to calculate elapsed times
QEnableSharedFromThis | A base class that allows obtaining a QSharedPointer for an object already managed by a shared pointer
QEvent | The base class of all event classes. Event objects contain event parameters
QEventLoop | Means of entering and leaving an event loop
QEventLoopLocker | Means to quit an event loop when it is no longer needed
QException | Base class for exceptions that can be transferred across threads
QExplicitlySharedDataPointer | Represents a pointer to an explicitly shared object
QFile | Interface for reading from and writing to files
QFileDevice | Interface for reading from and writing to open files
QFileInfo | OS-independent API to retrieve information about file system entries
QFileSelector | Convenient way of selecting file variants
QFileSystemWatcher | Interface for monitoring files and directories for modifications
QFlag | Helper data type for QFlags
QFlags | Type-safe way of storing OR-combinations of enum values
QFuture | Represents the result of an asynchronous computation
QFutureIterator | Java-style const iterator for QFuture
QFutureSynchronizer | Convenience class that simplifies QFuture synchronization
QFutureWatcher | Allows monitoring a QFuture using signals and slots
QGenericArgument | Internal helper class for marshalling arguments
QGenericReturnArgument | Internal helper class for marshalling arguments
QGlobalStatic | Used to implement a global static object
QGregorianCalendar | Implements the Gregorian calendar
QHash | Template class that provides a hash-table-based dictionary
QHashIterator | Java-style const iterator for QHash and QMultiHash
QHashSeed
QIODevice | The base interface class of all I/O devices in Qt
QIODeviceBase | Base class for QIODevice that provides flags describing the mode in which a device is opened
QIdentityProxyModel | Proxies its source model unmodified
QItemSelection | Manages information about selected items in a model
QItemSelectionModel | Keeps track of a view's selected items
QItemSelectionRange | Manages information about a range of selected items in a model
QIterable | Template class that is the base class for QSequentialIterable and QAssociativeIterable
QIterator | Template class that allows iteration over a container in a QVariant
QJalaliCalendar | Jalali (Hijri Shamsi) calendar system implementation
QJniArray | Template class that represents an array in Java
QJniArrayBase | Common, type-independent APIs for QJniArray
QJniEnvironment | Access to the JNI Environment (JNIEnv)
QJniObject | A convenience wrapper around the Java Native Interface (JNI)
QJsonArray | Encapsulates a JSON array
QJsonDocument | Way to read and write JSON documents
QJsonObject | Encapsulates a JSON object
QJsonParseError | Used to report errors during JSON parsing
QJsonValue | Encapsulates a value in JSON
QJulianCalendar | Julian calendar system implementation
QKeyCombination | Stores a combination of a key with optional modifiers
QKeyValueIterator | Iterator over the key/value pairs of an associative container
QLEInteger | Platform-independent little-endian integers
QLatin1Char | 8-bit ASCII/Latin-1 character
QLatin1String | The same as QLatin1StringView
QLatin1StringMatcher | Optimized search for substring in Latin-1 text
QLatin1StringView | Thin wrapper around a US-ASCII/Latin-1 encoded string literal
QLibrary | Loads shared libraries at runtime
QLibraryInfo | Information about the Qt library
QLine | Two-dimensional vector using integer precision
QLineF | Two-dimensional vector using floating point precision
QList | Template class that provides a dynamic array
QListIterator | Java-style const iterator for QList and QQueue
QLocale | Converts between numbers and their string representations in various languages
QLocationPermission | Access the user's location
QLockFile | Locking between processes using a file
QLoggingCategory | Represents a category, or 'area' in the logging infrastructure
QMap | Template class that provides an associative array
QMapIterator | Java-style const iterator for QMap
QMargins | Defines the four margins of a rectangle
QMarginsF | Defines the four margins of a rectangle
QMessageAuthenticationCode | Way to generate hash-based message authentication codes
QMessageLogContext | Additional information about a log message
QMessageLogger | Generates log messages
QMetaClassInfo | Additional information about a class
QMetaContainer | Common functionality for sequential and associative containers
QMetaEnum | Meta-data about an enumerator
QMetaMethod | Meta-data about a member function
QMetaObject | Contains meta-information about Qt objects
QMetaObject::Connection
QMetaProperty | Meta-data about a property
QMetaSequence | Allows type erased access to sequential containers
QMetaType | Manages named types in the meta-object system
QMicrophonePermission | Access the microphone for monitoring or recording sound
QMilankovicCalendar | Milanković calendar system implementation
QMimeData | Container for data that records information about its MIME type
QMimeDatabase | Maintains a database of MIME types
QMimeType | Describes types of file or data, represented by a MIME type string
QModelIndex | Used to locate data in a data model
QModelRoleData | Holds a role and the data associated to that role
QModelRoleDataSpan | Span over QModelRoleData objects
QMultiHash | Multi-valued hash table
QMultiMap | Template class that provides an associative array with multiple equivalent keys
QMultiMap::key_iterator | QMultiMap::key_iterator class provides an STL-style const iterator for QMultiMap keys
QMultiMapIterator | Java-style const iterator for QMultiMap. QMultiMap has both Java-style iterators and STL-style iterators. STL-style iterators are more efficient and should be preferred
QMutableHashIterator | Java-style non-const iterator for QHash and QMultiHash
QMutableListIterator | Java-style non-const iterator for QList, QQueue and QStack
QMutableMapIterator | Java-style non-const iterator for QMap
QMutableMultiMapIterator | Java-style non-const iterator for QMultiMap
QMutableSetIterator | Java-style non-const iterator for QSet
QMutex | Access serialization between threads
QMutexLocker | Convenience class that simplifies locking and unlocking mutexes
QNativeInterface::QAndroidApplication | Native interface to a core application on Android
QNativeIpcKey | Holds a native key used by QSystemSemaphore and QSharedMemory
QNtfsPermissionCheckGuard | RAII class to manage NTFS permission checking
QObject | The base class of all Qt objects
QObjectBindableProperty | Template class that enables automatic property bindings for property data stored in QObject derived classes
QObjectCleanupHandler | Watches the lifetime of multiple QObjects
QObjectComputedProperty | Template class to help port old properties to the bindable property system
QOperatingSystemVersion | Information about the operating system version
QParallelAnimationGroup | Parallel group of animations
QPartialOrdering | Represents the result of a comparison that allows for unordered results
QPauseAnimation | Pause for QSequentialAnimationGroup
QPermission | An opaque wrapper of a typed permission
QPersistentModelIndex | Used to locate data in a data model
QPluginLoader | Loads a plugin at run-time
QPoint | Defines a point in the plane using integer precision
QPointF | Defines a point in the plane using floating point precision
QPointer | Template class that provides guarded pointers to QObject
QProcess | Used to start external programs and to communicate with them
QProcess::CreateProcessArguments
QProcess::UnixProcessParameters
QProcessEnvironment | Holds the environment variables that can be passed to a program
QPromise | Way to store computation results to be accessed by QFuture
QProperty | Template class that enables automatic property bindings
QPropertyAnimation | Animates Qt properties
QPropertyBindingError
QPropertyChangeHandler | Controls the lifecycle of change callback installed on a QProperty
QPropertyData | Helper class for properties with automatic property bindings
QPropertyNotifier | Controls the lifecycle of change callback installed on a QProperty
QQueue | Generic container that provides a queue
QRandomGenerator | Allows one to obtain random values from a high-quality Random Number Generator
QRandomGenerator64 | Allows one to obtain 64-bit random values from a high-quality, seed-less Random Number Generator
QReadLocker | Convenience class that simplifies locking and unlocking read-write locks for read access
QReadWriteLock | Read-write locking
QRect | Defines a rectangle in the plane using integer precision
QRectF | Defines a finite rectangle in the plane using floating point precision
QRecursiveMutex | Access serialization between threads
QRegularExpression | Pattern matching using regular expressions
QRegularExpressionMatch | The results of a matching a QRegularExpression against a string
QRegularExpressionMatchIterator | Iterator on the results of a global match of a QRegularExpression object against a string
QResource | Interface for reading directly from resources
QRomanCalendar | Shared base for calendars based on the ancient Roman calendar
QRunnable | The base class for all runnable objects
QSaveFile | Interface for safely writing to files
QScopeGuard | Provides a scope guard for calling a function at the end of a scope
QScopedArrayPointer | Stores a pointer to a dynamically allocated array of objects, and deletes it upon destruction
QScopedPointer | Stores a pointer to a dynamically allocated object, and deletes it upon destruction
QScopedPropertyUpdateGroup | RAII class around Qt::beginPropertyUpdateGroup()/Qt::endPropertyUpdateGroup()
QScopedValueRollback | Resets a variable to its previous value on destruction
QSemaphore | General counting semaphore
QSemaphoreReleaser | Exception-safe deferral of a QSemaphore::release() call
QSequentialAnimationGroup | Sequential group of animations
QSequentialIterable | Iterable interface for a container in a QVariant
QSet | Template class that provides a hash-table-based set
QSet::const_iterator | QSet::const_iterator class provides an STL-style const iterator for QSet
QSet::iterator | QSet::iterator class provides an STL-style non-const iterator for QSet
QSetIterator | Java-style const iterator for QSet
QSettings | Persistent platform-independent application settings
QSharedData | Base class for shared data objects
QSharedDataPointer | Represents a pointer to an implicitly shared object
QSharedMemory | Access to a shared memory segment
QSharedPointer | Holds a strong reference to a shared pointer
QSignalBlocker | Exception-safe wrapper around QObject::blockSignals()
QSignalMapper | Bundles signals from identifiable senders
QSize | Defines the size of a two-dimensional object using integer point precision
QSizeF | Defines the size of a two-dimensional object using floating point precision
QSocketNotifier | Support for monitoring activity on a file descriptor
QSortFilterProxyModel | Support for sorting and filtering data passed between another model and a view
QSpan | A non-owning container over contiguous data
QStack | Template class that provides a stack
QStandardPaths | Methods for accessing standard paths
QStaticByteArrayMatcher | Compile-time version of QByteArrayMatcher
QStaticLatin1StringMatcher | Compile-time version of QLatin1StringMatcher
QStaticPlugin | Struct containing a reference to a static plugin instance together with its meta data
QStorageInfo | Provides information about currently mounted storage and drives
QString | Unicode character string
QStringConverter | Base class for encoding and decoding text
QStringDecoder | State-based decoder for text
QStringEncoder | State-based encoder for text
QStringList | List of strings
QStringListModel | Model that supplies strings to views
QStringMatcher | Holds a sequence of characters that can be quickly matched in a Unicode string
QStringTokenizer | Splits strings into tokens along given separators
QStringView | Unified view on UTF-16 strings with a read-only subset of the QString API
QSysInfo | Information about the system
QSystemSemaphore | General counting system semaphore
QTaggedIterator | Template class that wraps an iterator and exposes standard iterator traits
QTemporaryDir | Creates a unique directory for temporary use
QTemporaryFile | I/O device that operates on temporary files
QTextBoundaryFinder | Way of finding Unicode text boundaries in a string
QTextStream | Convenient interface for reading and writing text
QThread | Platform-independent way to manage threads
QThreadPool | Manages a collection of QThreads
QThreadStorage | Per-thread data storage
QTime | Clock time functions
QTimeLine | Timeline for controlling animations
QTimeZone | Identifies how a time representation relates to UTC
QTimeZone::OffsetData
QTimer | Repetitive and single-shot timers
QTimerEvent | Contains parameters that describe a timer event
QTranslator | Internationalization support for text output
QTransposeProxyModel | This proxy transposes the source model
QTypeRevision | Contains a lightweight representation of a version number with two 8-bit segments, major and minor, either of which can be unknown
QUnhandledException | Represents an unhandled exception in a Qt Concurrent worker thread
QUntypedBindable | Uniform interface over bindable properties like QProperty\<T\> and QObjectBindableProperty of any type T
QUrl | Convenient interface for working with URLs
QUrlQuery | Way to manipulate a key-value pairs in a URL's query
QUtf8StringView | Unified view on UTF-8 strings with a read-only subset of the QString API
QUuid | Stores a Universally Unique Identifier (UUID)
QUuid::Id128Bytes
QVarLengthArray | Low-level variable-length array
QVariant | Acts like a union for the most common Qt data types
QVariantAnimation | Base class for animations
QVariantConstPointer | Emulated const pointer to QVariant based on a pointer
QVariantPointer | Template class that emulates a pointer to QVariant based on a pointer
QVariantRef | Acts as a non-const reference to a QVariant
QVector | Alias for QList
QVersionNumber | Contains a version number with an arbitrary number of segments
QWaitCondition | Condition variable for synchronizing threads
QWeakPointer | Holds a weak reference to a shared pointer
QWinEventNotifier | Support for the Windows Wait functions
QWriteLocker | Convenience class that simplifies locking and unlocking read-write locks for write access
QXmlStreamAttribute | Represents a single XML attribute
QXmlStreamAttributes | Represents a vector of QXmlStreamAttribute
QXmlStreamEntityDeclaration | Represents a DTD entity declaration
QXmlStreamEntityResolver | Entity resolver for a QXmlStreamReader
QXmlStreamNamespaceDeclaration | Represents a namespace declaration
QXmlStreamNotationDeclaration | Represents a DTD notation declaration
QXmlStreamReader | Fast parser for reading well-formed XML via a simple streaming API
QXmlStreamWriter | XML writer with a simple streaming API
Qt::partial_ordering | Qt::partial_ordering represents the result of a comparison that allows for unordered results
Qt::strong_ordering | Qt::strong_ordering represents a comparison where equivalent values are indistinguishable
Qt::totally_ordered_wrapper | Qt::totally_ordered_wrapper is a wrapper type that provides strict total order for the wrapped types
Qt::weak_ordering | Qt::weak_ordering represents a comparison where equivalent values are still distinguishable
QtFuture::WhenAnyResult | QtFuture::WhenAnyResult is used to represent the result of QtFuture::whenAny()
qfloat16 | Provides 16-bit floating point support

## Detailed Description

All other Qt modules rely on this module.

The Qt Core page contains information about how to use the module.