![]() |
Строгая типизация данных. Как правильно писать код?
Здравствуйте. Так-уж вышло, что со строгой типизацией данных столкнулся только при изучении as3. Отсюда есть сомнения по правильности их использования в некоторых моментах. Приведу пример:
Код AS3:
Варианты ответа :moder: : A) Изменить тип данных color:* B) Добавить флаг в класс empty:Boolean и делать проверку через флаг D) Ваш вариант ответа. |
Думаю флаг. Вариант В.
|
Если цвет не ARGB то можно использовать uint.MAX_VALUE (0xffffffff)
|
Цвет как раз ARGB и все значения uint заняты.
|
А я бы Number использовал бы, и не парился.
|
Цитата:
Есть еще варианты: каждый цвет хранить отдельно, в сеттер диспатчер запихнуть, сделать обязательным параметром в конструкторе и т.д. :) |
Код AS3:
|
Мне как раз не нужно выполнять никаких логик. Все что мне требуется это возвращать color либо как uint, либо как null.
Пока пришел к выводу, что этот вариант будет правильнее: Код AS3:
|
А что мешает использовать нормальное дефолтное значение?
Код:
public class MyObject { |
Так, по поводу private var color:int = -1; Отменяется =( uint диапозон больше, чем int.
2alexcon314 Проблема в том, что есть понятие пустота и что-то. В данном случае для color:uint = 0 в ARGB соответствует черный цвет с альфой 100%. |
| Часовой пояс GMT +4, время: 22:47. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.