The classes listed below automatically detach from common data if an object is about to be changed. The programmer will not even notice that the objects are shared. Thus you should treat separate instances of them as separate objects. They will always behave as separate objects but with the added benefit of sharing data whenever possible. For this reason, you can pass instances of these classes as arguments to functions by value without concern for the copying overhead.
QBitArray | Array of bits |
QBitmap | Monochrome (1-bit depth) pixmaps |
QBrush | Defines the fill pattern of shapes drawn by QPainter |
QByteArray | Array of bytes |
QCache | Template class that provides a cache |
QCursor | Mouse cursor with an arbitrary shape |
QDir | Access to directory structures and their contents |
QFileInfo | System-independent file information |
QFont | Specifies a font used for drawing text |
QFontInfo | General information about fonts |
QFontMetrics | Font metrics information |
QFontMetricsF | Font metrics information |
QGLColormap | Used for installing custom colormaps into QGLWidgets |
QGradient | Used in combination with QBrush to specify gradient fills |
QHash | Template class that provides a hash-table-based dictionary |
QIcon | Scalable icons in different modes and states |
QImage | Hardware-independent image representation that allows direct access to the pixel data, and can be used as a paint device |
QKeySequence | Encapsulates a key sequence as used by shortcuts |
QLinkedList | Template class that provides linked lists |
QList | Template class that provides lists |
QLocale | Converts between numbers and their string representations in various languages |
QMap | Template class that provides a skip-list-based dictionary |
QMultiHash | Convenience QHash subclass that provides multi-valued hashes |
QMultiMap | Convenience QMap subclass that provides multi-valued maps |
QPainterPath | Container for painting operations, enabling graphical shapes to be constructed and reused |
QPalette | Contains color groups for each widget state |
QPen | Defines how a QPainter should draw lines and outlines of shapes |
QPicture | Paint device that records and replays QPainter commands |
QPixmap | Off-screen image representation that can be used as a paint device |
QPolygon | Vector of points using integer precision |
QPolygonF | Vector of points using floating point precision |
QQueue | Generic container that provides a queue |
QRegExp | Pattern matching using regular expressions |
QRegion | Specifies a clip region for a painter |
QSet | Template class that provides a hash-table-based set |
QSqlField | Manipulates the fields in SQL database tables and views |
QSqlQuery | Means of executing and manipulating SQL statements |
QSqlRecord | Encapsulates a database record |
QStack | Template class that provides a stack |
QString | Unicode character string |
QStringList | List of strings |
QTextBoundaryFinder | Way of finding Unicode text boundaries in a string |
QTextCursor | Offers an API to access and modify QTextDocuments |
QTextDocumentFragment | Represents a piece of formatted text from a QTextDocument |
QTextFormat | Formatting information for a QTextDocument |
QUrl | Convenient interface for working with URLs |
QVariant | Acts like a union for the most common Qt data types |
QVector | Template class that provides a dynamic array |
QX11Info | Information about the X display configuration |