Руководство по actionscript. часть 1, стр. 133

Нетипизированные переменные, параметры и возвращаемые значения не ограничены определенным типом данных (в отличие от типизированных переменных, параметров и возвращаемых значений). Например, нетипизированной переменной можно присвоить значение типа Boolean в одной строке кода, а в следующей строке присвоить этой же переменной объект VirtualPet без каких-либо ошибок:

var stuff = true:

stuff = new VirtualPetC’Edwin»); // Ошибки нет

I Компилятор языка ActionScript не генерирует ошибки несоответствия типов для нетипи-м$ j „ зированных переменных, параметров и возвращаемых значений.

ipj_

Если программист хочет явно указать, что переменная, параметр или возвращаемое значение намеренно являются нетипизированными, он может использовать специальную аннотацию типа : *. Например, следующий код определяет явно не-типизированную переменную totalCost:

var totalCost:* = 9.99:

Следующий код определяет ту же переменную, но на этот раз она является нетипизированной неявно:

var totalCost =9.99;

Неявно нетипизированные переменные, параметры и возвращаемые значения обычно используются в тех случаях, когда в программе вообще не применяются аннотации типов, что дает программисту возможность обрабатывать любые типы ошибок на этапе выполнения. Явно нетипизированные переменные, параметры и возвращаемые значения обычно используются в тех случаях, когда программист желает явно указать место в программе, компилируемой в строгом режиме, где допустимо применение нескольких типов данных. Аннотация типа : * позволяет предотвратить появление предупреждения об «отсутствующей аннотации типа» для нетипизированной переменной. Более подробно этот вопрос будет рассмотрен в разд. «Предупреждения об отсутствующих аннотациях типов».

Три особых случая строгого режима

Существует три ситуации, в которых компилятор игнорирует ошибки несоответствия типов при компиляции программы в строгом режиме, не позволяя выявить возможные ошибки до этапа выполнения:

? когда нетипизированное выражение присваивается типизированной переменной или параметру либо возвращается из функции с объявленным типом возвращаемого значения;

? если любое выражение присваивается типизированной переменной или параметру, чьим объявленным типом является Boolean, либо возвращается из функции, объявленным типом возвращаемого значения которой является Boolean;

? когда любое числовое значение используется там, где должен быть указан экземпляр другого числового типа.

Рассмотрим каждый из описанных случаев на примере. Сначала создадим нети-пизированную переменную pet и присвоим ее значение типизированной переменной <±

var pet:* = new Vi rtualPet(«Francis»): pet = new Date( ); var d:Date = pet;

Поскольку переменная pet может содержать значение любого типа, в третьей строке компилятор не сможет определить, принадлежит ли значение переменной pet типу данных Date. Чтобы определить это, код должен быть не только откомпилирован, но и выполнен. Во время исполнения кода среда Flash сможет узнать результат попытки присваивания. В случае с предыдущим кодом значение, хранящееся в переменной pet (присвоенное во второй строке), на самом деле принадлежит типу данных Date (даже несмотря на то, что изначально значение переменной pet, присвоенное в первой строке кода, было несовместимо с типом данных Date). Таким образом, операция присваивания будет выполнена без ошибок.

google.com bobrdobr.ru del.icio.us technorati.com linkstore.ru news2.ru rumarkz.ru memori.ru moemesto.ru

Оставить комментарий

Вы должны авторизоваться для отправки комментария.

Полезные ссылки
Случайные записи
  • 14.08.2011">Купи билет через интернет
  • 16.03.2011">Руководство по actionscript. часть 3, стр. 018
  • 11.05.2010">Самоучитель по креативному веб-дизайну. Книга 1, стр.32
  • 06.04.2010">Уроки и учебники по photoshop
  • 21.07.2011">Дизайн современных часов
  • 13.06.2010">Самоучитель по креативному веб-дизайну. Книга 4, стр.100
  • 10.05.2010">Самоучитель по креативному веб-дизайну. Книга 1, стр.110
  • 23.01.2011">Руководство по actionscript. часть 1, стр. 054
  • 28.02.2011">Руководство по actionscript. часть 5, стр. 140
  • 20.03.2011">Руководство по actionscript. часть 2, стр. 068
  • 12.03.2011">Руководство по actionscript. часть 3, стр. 129
  • 03.06.2010">Самоучитель по креативному веб-дизайну. Книга 3, стр.52
  • 19.05.2010">Самоучитель по креативному веб-дизайну. Книга 2, стр.22
  • 13.03.2011">Руководство по actionscript. часть 3, стр. 095
  • 16.11.2011">ОбзоркорпусаCarbideSeries 500R
Опрос

Какие цвета вы предпочитаете?

View Results

Loading ... Loading ...