Spec-Zone.ru › Tcl/Tk

global

Имя

global — Доступ к глобальным переменным

Синтаксис

global ?varname ...?

Описание

Эта команда не имеет эффекта, если она выполняется не в теле процедуры. Если команда global выполняется в теле процедуры, она создает локальные переменные, связанные с соответствующими глобальными переменными (хотя эти связанные переменные, как и те, что создаются командой upvar, не включены в список, возвращаемый командой info locals).

Если varname содержит квалификаторы пространства имен, имя локальной переменной является неквалифицированным именем глобальной переменной, определяемым командой namespace tail.

varname всегда обрабатывается как имя переменной, а не элемента массива. Возвращается ошибка, если имя похоже на элемент массива, например, a(b).

Примеры

Эта процедура устанавливает переменную пространства имен ::a::x
proc reset {} {
    global a::x
    set x 0
}

Эта процедура накапливает переданные ей строки в глобальный буфер, разделяя их символами новой строки. Это полезно в ситуациях, когда необходимо построить сообщение по частям (как с помощью команды puts), но отправить это полное сообщение одним куском (например, по подключению, открытому с помощью socket или в качестве части ответа HTTP с указанным количеством байтов).

proc accum {string} {
    global accumulator
    append accumulator $string \n
}

См. также

namespace, upvar, variable

Licensed under Tcl/Tk terms
https://www.tcl.tk/man/tcl/TclCmd/global.htm

Licensed under Tcl/Tk terms
https://www.tcl.tk/man/tcl/TclCmd/global.htm

Spec-Zone.ru

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