QCommandLineOption Class

Die Klasse QCommandLineOption definiert eine mögliche Kommandozeilenoption. Mehr...

Kopfzeile: #include <QCommandLineOption>
CMake: find_package(Qt6 REQUIRED COMPONENTS Core)
target_link_libraries(mytarget PRIVATE Qt6::Core)
qmake: QT += core

Öffentliche Typen

enum Flag { HiddenFromHelp, ShortOptionStyle }
flags Flags

Öffentliche Funktionen

QCommandLineOption(const QString &name)
QCommandLineOption(const QStringList &names)
QCommandLineOption(const QString &name, const QString &description, const QString &valueName = QString(), const QString &defaultValue = QString())
QCommandLineOption(const QStringList &names, const QString &description, const QString &valueName = QString(), const QString &defaultValue = QString())
QCommandLineOption(const QCommandLineOption &other)
~QCommandLineOption()
QStringList defaultValues() const
QString description() const
QCommandLineOption::Flags flags() const
QStringList names() const
void setDefaultValue(const QString &defaultValue)
void setDefaultValues(const QStringList &defaultValues)
void setDescription(const QString &description)
void setFlags(QCommandLineOption::Flags flags)
void setValueName(const QString &valueName)
void swap(QCommandLineOption &other)
QString valueName() const
QCommandLineOption &operator=(QCommandLineOption &&other)
QCommandLineOption &operator=(const QCommandLineOption &other)

Detaillierte Beschreibung

Diese Klasse wird verwendet, um eine Option in der Kommandozeile zu beschreiben. Sie erlaubt verschiedene Arten, dieselbe Option zu definieren, wobei mehrere Aliase möglich sind. Sie wird auch verwendet, um zu beschreiben, wie die Option verwendet wird - sie kann ein Flag sein (z. B. -v) oder einen Wert annehmen (z. B. -o file).

Beispiele:

QCommandLineOption verboseOption("verbose", "Verbose mode. Prints out more information.");
QCommandLineOption outputOption(QStringList() << "o" << "output", "Write generated data into <file>.", "file");

Siehe auch QCommandLineParser.

Member-Typ-Dokumentation

enum QCommandLineOption::Flag
flags QCommandLineOption::Flags

KonstanteWertBeschreibung
QCommandLineOption::HiddenFromHelp0x1Blendet diese Option in der für den Benutzer sichtbaren Hilfeausgabe aus. Standardmäßig sind alle Optionen sichtbar. Wenn Sie dieses Flag für eine bestimmte Option setzen, wird sie intern, d.h. nicht in der Hilfeausgabe aufgeführt.
QCommandLineOption::ShortOptionStyle0x2Die Option wird immer als Kurzoption verstanden, unabhängig davon, was durch QCommandLineParser::setSingleDashWordOptionMode gesetzt wurde. Dadurch können Flags wie -DDEFINE=VALUE oder -I/include/path als kurze Flags interpretiert werden, auch wenn sich der Parser im Modus QCommandLineParser::ParseAsLongOptions befindet.

Der Typ Flags ist ein Typedef für QFlags<Flag>. Er speichert eine OR-Kombination von Flag-Werten.

Siehe auch QCommandLineOption::setFlags() und QCommandLineOption::flags().

Dokumentation der Mitgliedsfunktionen

[explicit] QCommandLineOption::QCommandLineOption(const QString &name)

Konstruiert ein Kommandozeilenoptionsobjekt mit dem Namen name.

Der Name kann entweder kurz oder lang sein. Wenn der Name nur ein Zeichen lang ist, wird er als kurzer Name betrachtet. Optionsnamen dürfen nicht leer sein, dürfen nicht mit einem Bindestrich oder Schrägstrich beginnen, dürfen kein = enthalten und dürfen nicht wiederholt werden.

Siehe auch setDescription(), setValueName(), und setDefaultValues().

[explicit] QCommandLineOption::QCommandLineOption(const QStringList &names)

Konstruiert ein Kommandozeilenoptionsobjekt mit den Namen names.

Diese Überladung erlaubt es, mehrere Namen für die Option zu setzen, zum Beispiel o und output.

Die Namen können entweder kurz oder lang sein. Jeder Name in der Liste, der nur ein Zeichen lang ist, ist ein kurzer Name. Optionsnamen dürfen nicht leer sein, dürfen nicht mit einem Bindestrich oder Schrägstrich beginnen, dürfen kein = enthalten und dürfen nicht wiederholt werden.

Siehe auch setDescription(), setValueName(), und setDefaultValues().

QCommandLineOption::QCommandLineOption(const QString &name, const QString &description, const QString &valueName = QString(), const QString &defaultValue = QString())

Konstruiert ein Befehlszeilenoptionsobjekt mit den angegebenen Argumenten.

Der Name der Option wird auf name gesetzt. Der Name kann entweder kurz oder lang sein. Wenn der Name nur ein Zeichen lang ist, wird er als kurzer Name betrachtet. Optionsnamen dürfen nicht leer sein, dürfen nicht mit einem Bindestrich oder Schrägstrich beginnen, dürfen kein = enthalten und dürfen nicht wiederholt werden.

Die Beschreibung wird auf description gesetzt. Es ist üblich, am Ende der Beschreibung ein "." hinzuzufügen.

Darüber hinaus muss valueName gesetzt werden, wenn die Option einen Wert erwartet. Der Standardwert für die Option ist auf defaultValue gesetzt.

In Qt-Versionen vor 5.4 war dieser Konstruktor explicit. In Qt 5.4 und später ist er das nicht mehr und kann für eine einheitliche Initialisierung verwendet werden:

QCommandLineParser parser;
parser.addOption({"verbose", "Verbose mode. Prints out more information."});

Siehe auch setDescription(), setValueName(), und setDefaultValues().

QCommandLineOption::QCommandLineOption(const QStringList &names, const QString &description, const QString &valueName = QString(), const QString &defaultValue = QString())

Konstruiert ein Befehlszeilenoptionsobjekt mit den angegebenen Argumenten.

Diese Überladung erlaubt es, mehrere Namen für die Option zu setzen, zum Beispiel o und output.

Die Namen der Option werden auf names gesetzt. Die Namen können entweder kurz oder lang sein. Jeder Name in der Liste, der nur ein Zeichen lang ist, ist ein kurzer Name. Optionsnamen dürfen nicht leer sein, dürfen nicht mit einem Bindestrich oder Schrägstrich beginnen, dürfen kein = enthalten und dürfen nicht wiederholt werden.

Die Beschreibung wird auf description gesetzt. Es ist üblich, am Ende der Beschreibung ein "." hinzuzufügen.

Darüber hinaus muss valueName gesetzt werden, wenn die Option einen Wert erwartet. Der Standardwert für die Option ist auf defaultValue gesetzt.

In Qt-Versionen vor 5.4 war dieser Konstruktor explicit. In Qt 5.4 und später ist er das nicht mehr und kann für eine einheitliche Initialisierung verwendet werden:

QCommandLineParser parser;
parser.addOption({{"o", "output"}, "Write generated data into <file>.", "file"});

Siehe auch setDescription(), setValueName(), und setDefaultValues().

QCommandLineOption::QCommandLineOption(const QCommandLineOption &other)

Konstruiert ein QCommandLineOption-Objekt, das eine Kopie des QCommandLineOption-Objekts other ist.

Siehe auch operator=().

[noexcept] QCommandLineOption::~QCommandLineOption()

Zerstört das Objekt command line option.

QStringList QCommandLineOption::defaultValues() const

Gibt die für diese Option eingestellten Standardwerte zurück.

Siehe auch setDefaultValues().

QString QCommandLineOption::description() const

Gibt die für diese Option eingestellte Beschreibung zurück.

Siehe auch setDescription().

QCommandLineOption::Flags QCommandLineOption::flags() const

Gibt einen Satz von Flags zurück, die diese Befehlszeilenoption beeinflussen.

Siehe auch setFlags() und QCommandLineOption::Flags.

QStringList QCommandLineOption::names() const

Gibt die für diese Option festgelegten Namen zurück.

void QCommandLineOption::setDefaultValue(const QString &defaultValue)

Setzt den für diese Option verwendeten Standardwert auf defaultValue.

Der Standardwert wird verwendet, wenn der Benutzer der Anwendung die Option nicht in der Befehlszeile angibt.

Wenn defaultValue leer ist, hat die Option keine Standardwerte.

Siehe auch defaultValues() und setDefaultValues().

void QCommandLineOption::setDefaultValues(const QStringList &defaultValues)

Setzt die Liste der für diese Option verwendeten Standardwerte auf defaultValues.

Die Standardwerte werden verwendet, wenn der Benutzer der Anwendung die Option nicht in der Befehlszeile angibt.

Siehe auch defaultValues() und setDefaultValue().

void QCommandLineOption::setDescription(const QString &description)

Setzt die für diese Option verwendete Beschreibung auf description.

Es ist üblich, am Ende der Beschreibung ein "." hinzuzufügen.

Die Beschreibung wird von QCommandLineParser::showHelp() verwendet.

Siehe auch description().

void QCommandLineOption::setFlags(QCommandLineOption::Flags flags)

Setzen Sie den Satz von Flags, die diese Befehlszeilenoption beeinflussen, auf flags.

Siehe auch flags() und QCommandLineOption::Flags.

void QCommandLineOption::setValueName(const QString &valueName)

Setzt den Namen des erwarteten Wertes für die Dokumentation auf valueName.

Optionen ohne zugewiesenen Wert haben ein boolesches Verhalten: entweder gibt der Benutzer -option an oder nicht.

Optionen, denen ein Wert zugewiesen wurde, müssen einen Namen für den erwarteten Wert für die Dokumentation der Option in der Hilfeausgabe festlegen. Eine Option mit den Namen o und output und dem Wert file wird als -o, --output <file> angezeigt.

Rufen Sie QCommandLineParser::value() auf, wenn Sie erwarten, dass die Option nur einmal vorhanden ist, und QCommandLineParser::values(), wenn Sie erwarten, dass die Option mehrmals vorhanden ist.

Siehe auch valueName().

[noexcept] void QCommandLineOption::swap(QCommandLineOption &other)

Tauscht diese Option mit other aus. Dieser Vorgang ist sehr schnell und schlägt nie fehl.

QString QCommandLineOption::valueName() const

Gibt den Namen des erwarteten Wertes zurück.

Wenn leer, nimmt die Option keinen Wert an.

Siehe auch setValueName().

[noexcept] QCommandLineOption &QCommandLineOption::operator=(QCommandLineOption &&other)

Verschieben - weist other dieser QCommandLineOption Instanz zu.

QCommandLineOption &QCommandLineOption::operator=(const QCommandLineOption &other)

Erstellt eine Kopie des Objekts other und ordnet sie diesem Objekt QCommandLineOption zu.

© 2025 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.