Processing:Примеры/Масштаб переменных
Содержание | Среда разработки Processing | Справочник языка Processing | Библиотеки | Примеры | Режимы программирования |
Описание[1]
Переменные имеют глобальный и локальный «масштаб». К примеру, переменные, объявленные внутри блоков setup() или draw(), могут использоваться только внутри этих блоков. Глобальные переменные – это переменные, объявленные вне блоков setup() и draw() – их можно использовать в любой части программы. Если локальная переменная задана с тем же названием, что и глобальная переменная, то в текущем масштабе (в текущем блоке кода) для расчетов будет использоваться локальная переменная. Кроме того, переменные можно локализовать внутри других блоков, отделяемых символами { и }.
Пример
int a = 80; // создаем глобальную переменную "a"
void setup() {
size(640, 360);
background(0);
stroke(255);
noLoop();
}
void draw() {
// рисуем линию при помощи глобальной переменной "a"
line(a, 0, a, height);
// создаем новую переменную "a" – локальную для цикла for():
for (int a = 120; a < 200; a += 2) {
line(a, 0, a, height);
}
// создаем новую переменную "a" – локальную для блока draw():
int a = 300;
// рисуем линию при помощи новой локальной переменной "a":
line(a, 0, a, height);
// вызываем пользовательскую функцию drawAnotherLine():
drawAnotherLine();
// вызываем пользовательскую функцию setYetAnotherLine():
drawYetAnotherLine();
}
void drawAnotherLine() {
// создаем новую переменную "a" – локальную для этой функции:
int a = 320;
// рисуем линию при помощи локальной переменной "a":
line(a, 0, a, height);
}
void drawYetAnotherLine() {
// поскольку в этой функции не задано локальной переменной "a",
// линия будет нарисована при помощи глобальной переменной "a",
// имеющей значение «80»:
line(a+2, 0, a+2, height);
}
{{#set: Код примера= int a = 80; // создаем глобальную переменную "a"
void setup() {
size(640, 360); background(0); stroke(255); noLoop();
}
void draw() {
// рисуем линию при помощи глобальной переменной "a" line(a, 0, a, height); // создаем новую переменную "a" – локальную для цикла for(): for (int a = 120; a < 200; a += 2) { line(a, 0, a, height); } // создаем новую переменную "a" – локальную для блока draw(): int a = 300; // рисуем линию при помощи новой локальной переменной "a": line(a, 0, a, height); // вызываем пользовательскую функцию drawAnotherLine(): drawAnotherLine(); // вызываем пользовательскую функцию setYetAnotherLine(): drawYetAnotherLine();
}
void drawAnotherLine() {
// создаем новую переменную "a" – локальную для этой функции: int a = 320; // рисуем линию при помощи локальной переменной "a": line(a, 0, a, height);
}
void drawYetAnotherLine() {
// поскольку в этой функции не задано локальной переменной "a", // линия будет нарисована при помощи глобальной переменной "a", // имеющей значение «80»: line(a+2, 0, a+2, height);
} }}
См.также
Внешние ссылки
Примеры на Processing | |
---|---|
Основы |
|
Продвинутые графические эффекты |
|
Примеры из сторонних библиотек |