Spec-Zone.ru › Qt 5.6

Класс 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 ведет себя соответствующим образом.

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

См. также 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/archives/qt-5.6/qprocessenvironment.html

Spec-Zone.ru

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