Spec-Zone.ru › Qt 5.12

Класс QProcessEnvironment

Класс QProcessEnvironment хранит переменные среды, которые могут быть переданы программе. Подробнее...

Заголовок: #include <QProcessEnvironment>
qmake: QT += core
С момента: Qt 4.6
  • Список всех членов, включая унаследованные

Примечание: Все функции в этом классе являются перевходными.

Открытые функции

QProcessEnvironment()
QProcessEnvironment(const QProcessEnvironment &other)
~QProcessEnvironment()
void clear()
bool contains(const QString &name) const
void insert(const QString &name, const QString &value)
void insert(const QProcessEnvironment &e)
bool isEmpty() const
QStringList keys() const
void remove(const QString &name)
void swap(QProcessEnvironment &other)
QStringList toStringList() const
QString value(const QString &name, const QString &defaultValue = QString()) const
bool operator!=(const QProcessEnvironment &other) const
QProcessEnvironment & operator=(QProcessEnvironment &&other)
QProcessEnvironment & operator=(const QProcessEnvironment &other)
bool operator==(const QProcessEnvironment &other) const

Статические открытые члены

QProcessEnvironment systemEnvironment()

Подробное описание

Класс QProcessEnvironment хранит переменные среды, которые могут быть переданы программе.

Среда процесса состоит из набора пар ключ=значение, известных как переменные среды. Класс QProcessEnvironment оборачивает эту концепцию и позволяет легко манипулировать этими переменными. Он предназначен для использования вместе с QProcess для установки среды дочерних процессов. Он не может использоваться для изменения среды текущего процесса.

Среду вызывающего процесса можно получить, используя QProcessEnvironment::systemEnvironment().

В системах Unix имена переменных чувствительны к регистру. Обратите внимание, что среда Unix допускает имена переменных и содержимое, содержащие произвольные двоичные данные (кроме символа NUL). QProcessEnvironment сохранит такие переменные, но не поддерживает манипулирование переменными, имена или значения которых не могут быть закодированы текущими настройками локальной кодировки (см. QTextCodec::codecForLocale).

В Windows имена переменных нечувствительны к регистру, но сохраняют регистр. QProcessEnvironment ведет себя соответствующим образом.

См. также QProcess, QProcess::systemEnvironment() и QProcess::setProcessEnvironment().

Документация по функциям-членам

QProcessEnvironment::QProcessEnvironment()

Создаёт новый объект QProcessEnvironment. Этот конструктор создаёт пустую среду. Если установить его в QProcess, это приведёт к удалению текущих переменных среды.

QProcessEnvironment::QProcessEnvironment(const QProcessEnvironment &other)

Создаёт объект QProcessEnvironment, который является копией other.

QProcessEnvironment::~QProcessEnvironment()

Освобождает ресурсы, связанные с этим объектом QProcessEnvironment.

void QProcessEnvironment::clear()

Удаляет все пары ключ=значение из этого объекта QProcessEnvironment, делая его пустым.

См. также isEmpty() и systemEnvironment().

bool QProcessEnvironment::contains(const QString &name) const

Возвращает true, если переменная среды с именем name найдена в этом объекте QProcessEnvironment.

См. также insert() и value().

void QProcessEnvironment::insert(const QString &name, const QString &value)

Вставляет переменную среды с именем name и содержимым value в этот объект QProcessEnvironment. Если такая переменная уже существовала, она заменяется новым значением.

В большинстве систем вставка переменной без содержимого будет иметь такой же эффект для приложений, как если бы переменная вообще не была установлена. Однако для гарантии отсутствия несовместимостей, чтобы удалить переменную, используйте функцию remove().

См. также contains(), remove() и value().

void QProcessEnvironment::insert(const QProcessEnvironment &e)

Это перегруженная функция.

Вставляет содержимое e в этот объект QProcessEnvironment. Переменные в этом объекте, которые также существуют в e, будут перезаписаны.

Эта функция была добавлена в Qt 4.8.

bool QProcessEnvironment::isEmpty() const

Возвращает true, если этот объект QProcessEnvironment пустой: то есть нет пар ключ=значение.

См. также clear(), systemEnvironment() и insert().

QStringList QProcessEnvironment::keys() const

Возвращает список, содержащий все имена переменных в этом объекте QProcessEnvironment.

Эта функция была добавлена в Qt 4.8.

void QProcessEnvironment::remove(const QString &name)

Удаляет переменную среды, идентифицируемую по name, из этого объекта QProcessEnvironment. Если такой переменной не существовало, ничего не происходит.

См. также contains(), insert() и value().

void QProcessEnvironment::swap(QProcessEnvironment &other)

Меняет местами этот экземпляр среды процесса с other. Эта функция очень быстрая и никогда не терпит неудачу.

Эта функция была добавлена в Qt 5.0.

[static] QProcessEnvironment QProcessEnvironment::systemEnvironment()

Функция systemEnvironment возвращает среду вызывающего процесса.

Он возвращается в виде QProcessEnvironment. Эта функция не кэширует системную среду. Поэтому можно получить обновлённую версию среды, если были вызваны низкоуровневые функции C-библиотеки, такие как setenv или putenv.

Однако обратите внимание, что повторные вызовы этой функции приведут к созданию нового объекта QProcessEnvironment, что является нетривиальной операцией.

Эта функция была добавлена в Qt 4.6.

См. также QProcess::systemEnvironment().

QStringList QProcessEnvironment::toStringList() const

Преобразует этот объект QProcessEnvironment в список строк, по одной строке для каждой установленной переменной среды. Имя переменной среды и её значение разделены символом «=».

Содержание QStringList, возвращаемое этой функцией, подходит для отображения. Использование с функцией QProcess::setEnvironment не рекомендуется из-за потенциальных проблем с кодировкой в Unix и худшей производительности.

См. также systemEnvironment(), QProcess::systemEnvironment() и QProcess::setProcessEnvironment().

QString QProcessEnvironment::value(const QString &name, const QString &defaultValue = QString()) const

Ищет в этом объекте QProcessEnvironment переменную, идентифицированную по имени name, и возвращает её значение. Если переменная не найдена в этом объекте, возвращается значение defaultValue.

См. также contains(), insert() и remove().

bool QProcessEnvironment::operator!=(const QProcessEnvironment &other) const

Возвращает true, если этот и объект other QProcessEnvironment отличаются.

См. также operator==().

QProcessEnvironment &QProcessEnvironment::operator=(QProcessEnvironment &&other)

Оператор перемещающего присваивания.

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

Копирует содержимое объекта other QProcessEnvironment в этот объект.

bool QProcessEnvironment::operator==(const QProcessEnvironment &other) const

Возвращает true, если этот и объект other QProcessEnvironment равны.

Два объекта QProcessEnvironment считаются равными, если они имеют одинаковый набор пар «ключ=значение». Сравнение ключей выполняется чувствительно к регистру на платформах, где среда чувствительна к регистру.

См. также operator!=() и contains().

© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-5.12/qprocessenvironment.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API