Опис змінних та констант

Однією з особливостей OOo Basic, успадкованою від класичного BASIC-a є певна довільність в описі змінних (на відміну від структурно струнких мов, таких як С, Pascal та їх різновидів). Змінні у макросах можна, як описувати за допомогою спеціальних інструкцій, так і використовувати їх в коді без будь-якого попереднього опису.

Явний опис змінної здійснюється за допомогою інструкції

Dim [As ] [, [As ]…]
де ім’я змінної повинно відповідати наступним вимогам:

  • ім’я може містити будь-яку комбінацію букв, цифр і символів, яка починається з букви;
  • для імен у OOo Basic дозволяється використовувати лише латинські літери;
  • довжина імені не повинна перевищувати 255 символів;
  • ім’я не може містити крапок, пропусків і розділових знаків та знаків арифметичних операцій;
  • імена повинні бути унікальними, всередині області, в які вони визначені;
  • імена у OOo Basic не чутливі до регістру літер, наприклад, MyVar і myVar в коді макроса позначають одну і ту ж змінну;
  • не дозволяється використовувати імена, які співпадають із ключовими словами та іменами вбудованих функцій і процедур;
  • запроваджені користувачем імена повинні відображати зміст об’єкта, який вони позначають, щоб програма була зручною для читання.

В інструкції опису Dim змінні можна описувати, не вказуючи їх типу. У цьому випадку змінна набуває тип Variant, тобто може містити значення будь-якого стандартного типу.

Неявний опис змінної – задання змінної в тілі програми, за допомогою оператора присвоєння (=). Наприклад, якщо транслятор VBA стикається в програмі з рядком NewVar = 1000, що містить невідому йому раніше змінну NewVar, то він автоматично резервує в пам’яті комп’ютера місце для зберігання значення цієї змінної.

Хоча неявний опис змінних зручний, проте є ризик створити нову змінну, коли насправді необхідно використовувати вже існуючу, або, навпаки, використовувати існуючу змінну, коли користувач намагається створити нову. Обидві ситуації призводять до помилок в коді програм, які важко відслідкувати. Вимога явного опису змінних Option Explicit дозволяє швидко знаходити помилки пов’язані з неявним описои змінних. При її використанні OpenOffice.org Basic вимагає явного опису всіх змінних (за допомогою оператора Dim) до їх використання в коді. Команда Option Explicit, записана на початку коду модуля, перешкоджає неявному опису змінних у межах цього модуля.

Константи. В OpenOffice.org Basic, як і в інших мовах програмування є два типи констант: іменовані та рядкові.

Використання іменованих констант робить програми легкими для читання і дозволяє легше вносити зміни і виправлення в текст процедур. Синтаксис опису іменованої константи:
Const <Ім’яКонстанти> [As ]= <Вираз>

  • Ім’яКонстанти – ім’я константи, що задовольняє стандартні правила іменування змінних.
  • Tuп – один із стандартних типів даних. Для кожної описуваної константи слід використовувати окреме речення As <Тип>.
  • Вираз – літерал, інша константа або який-небудь вираз.

Під терміном рядкова константа у програмуванні, зазвичай, розуміють числові або текстові значення, що використовуються безпосередньо у записі інструкції. Наприклад, згадана вище команда присвоєння NewVar = 1000 містить рядкову константу – число 1000, а інструкція MyMsg = “y = “ & y0 містить рядкову константу – текст y = .