Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 3.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 13.05.2010, 08:35
chaos вне форума Посмотреть профиль Отправить личное сообщение для chaos Найти все сообщения от chaos
  № 1  
Ответить с цитированием
chaos

Регистрация: Feb 2010
Сообщений: 20
По умолчанию Не понятно как модификатор const влияет на числа.

Доброго времени суток!
Подскажите пожалуйста новичку по константам: не понятно как модификатор const влияет на числа.
Например
Код AS3:
const a:int = 666;
a = 777;//Error
тут все понятно.

А вот тут нет
Код AS3:
const a:int = 666;
a++;//нормально работает :(
как так?

ЗЫ когда дело касается классов, вроде все понятно - нельзя поменять ссылку на объект

Старый 13.05.2010, 10:30
proxiServer вне форума Посмотреть профиль Отправить личное сообщение для proxiServer Найти все сообщения от proxiServer
  № 2  
Ответить с цитированием
proxiServer
 
Аватар для proxiServer

Регистрация: Jun 2006
Сообщений: 400
А не с "666" пробовали? =)

Старый 13.05.2010, 11:14
wvxvw вне форума Посмотреть профиль Отправить личное сообщение для wvxvw Найти все сообщения от wvxvw
  № 3  
Ответить с цитированием
wvxvw
Modus ponens
 
Аватар для wvxvw

модератор форума
Регистрация: Jul 2006
Адрес: #1=(list #1#)
Сообщений: 8,049
Записей в блоге: 38
Второе - баг. А вообще, AS3 не инлайнит константы и пользоваться в случае с числами, практически всегда лучше самими числами (ну только если там Пи или еще что-то такое, чтобы для удобства короче записать)...
__________________
Hell is the possibility of sanity

Старый 13.05.2010, 12:34
chaos вне форума Посмотреть профиль Отправить личное сообщение для chaos Найти все сообщения от chaos
  № 4  
Ответить с цитированием
chaos

Регистрация: Feb 2010
Сообщений: 20
Цитата:
Сообщение от wvxvw Посмотреть сообщение
Второе - баг. А вообще, AS3 не инлайнит константы и пользоваться в случае с числами, практически всегда лучше самими числами (ну только если там Пи или еще что-то такое, чтобы для удобства короче записать)...
мда. 6 лет пишу на С++ и еще с первых лет постоянно слышал что нефик использовать непонятные цифры. А тут(AS3) значит все иначе Забавно

Старый 13.05.2010, 13:06
-De- вне форума Посмотреть профиль Отправить личное сообщение для -De- Найти все сообщения от -De-
  № 5  
Ответить с цитированием
-De-
 
Аватар для -De-

блогер
Регистрация: Oct 2005
Адрес: Днепродзержинск - город Брежнева и других логопедов
Сообщений: 1,421
Записей в блоге: 4
Отправить сообщение для -De- с помощью ICQ Отправить сообщение для -De- с помощью Skype™
Ну если 6 лет, то наверное знаешь и зачем. И эти зачем остались и во флэше. Возможно в каком-то тормозящем куске есть смысл осторожно заменить константы на числа (и получить этак +5% производительности), но обычно - всё как в С++.

Старый 13.05.2010, 13:17
CrazyFlasher вне форума Посмотреть профиль Отправить личное сообщение для CrazyFlasher Найти все сообщения от CrazyFlasher
  № 6  
Ответить с цитированием
CrazyFlasher
 
Аватар для CrazyFlasher

Регистрация: May 2003
Адрес: Tallinn
Сообщений: 3,182
Код AS3:
const a:int = 666;
a++;//нормально работает :(
у меня не компилит
__________________
Flash Developer
Папа TDP4 Team Battle

Старый 13.05.2010, 14:26
wvxvw вне форума Посмотреть профиль Отправить личное сообщение для wvxvw Найти все сообщения от wvxvw
  № 7  
Ответить с цитированием
wvxvw
Modus ponens
 
Аватар для wvxvw

модератор форума
Регистрация: Jul 2006
Адрес: #1=(list #1#)
Сообщений: 8,049
Записей в блоге: 38
У меня четвертый СДК собрал и ничего не сказал...

Ну есть разница... Если создавать константу типа:
Код AS3:
const ONE:uint = 1;
То это глупо.
А если
Код AS3:
const AVOGADRO:Number = 1.660538783e23;
То это имеет смысл
__________________
Hell is the possibility of sanity


Последний раз редактировалось wvxvw; 13.05.2010 в 14:41.
Старый 13.05.2010, 14:32
chaos вне форума Посмотреть профиль Отправить личное сообщение для chaos Найти все сообщения от chaos
  № 8  
Ответить с цитированием
chaos

Регистрация: Feb 2010
Сообщений: 20
Цитата:
Сообщение от CrazyFlasher Посмотреть сообщение
Код AS3:
const a:int = 666;
a++;//нормально работает :(
у меня не компилит


Код:
Setting environment for using the Flex SDK.

C:\Program Files (x86)\Adobe\Flex Builder 3>java -version
java version "1.5.0_11"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_11-b03)
Java HotSpot(TM) Client VM (build 1.5.0_11-b03, mixed mode)

C:\Program Files (x86)\Adobe\Flex Builder 3>compc -version
Version 3.2.0 build 3958

C:\Program Files (x86)\Adobe\Flex Builder 3>cd c:\Users\dkononenko\temp\const_test

c:\Users\dkononenko\temp\const_test>cat ConstTestApp.as

package {
        import flash.display.Sprite;

        public class ConstTestApp extends Sprite {
                public function ConstTestApp() {
                        const CONSTANTA:int = 1234;
                        CONSTANTA++;
                }
        }
}

c:\Users\dkononenko\temp\const_test>mxmlc ConstTestApp.as
Loading configuration file C:\Program Files (x86)\Adobe\Flex Builder 3\sdks\3.2.0\frameworks\flex-config.xml C:\Users\dkononenko\temp\const_test\ConstTestApp.swf (568 bytes)
как видите все "гуд"

Старый 13.05.2010, 14:36
CrazyFlasher вне форума Посмотреть профиль Отправить личное сообщение для CrazyFlasher Найти все сообщения от CrazyFlasher
  № 9  
Ответить с цитированием
CrazyFlasher
 
Аватар для CrazyFlasher

Регистрация: May 2003
Адрес: Tallinn
Сообщений: 3,182
я билдил в cs4. Написал в кадре. И вот ошибка:
Код AS3:
ReferenceError: Error #1074: Illegal write to read-only property a on Untitled_fla.MainTimeline.
	at Untitled_fla::MainTimeline/frame1()
__________________
Flash Developer
Папа TDP4 Team Battle

Старый 13.05.2010, 14:39
chaos вне форума Посмотреть профиль Отправить личное сообщение для chaos Найти все сообщения от chaos
  № 10  
Ответить с цитированием
chaos

Регистрация: Feb 2010
Сообщений: 20
Цитата:
Сообщение от wvxvw Посмотреть сообщение
У меня четвертый СДК собрал и ничего не сказал...
такая же история. проверил под 3 и 4 на win и mac

Добавлено через 4 минуты
запостил баг https://bugs.adobe.com/jira/browse/ASC-4075
с янгл язом правда проблемы у мну ну думаю проблема будет понятна

Добавлено через 11 минут
Цитата:
Сообщение от -De- Посмотреть сообщение
Ну если 6 лет, то наверное знаешь и зачем...
*YES*

Добавлено через 20 минут
кто-то опередил https://bugs.adobe.com/jira/browse/ASC-4074

Добавлено через 32 минуты
upd: опередил господин wvxvw


Последний раз редактировалось chaos; 13.05.2010 в 14:44.
Создать новую тему Ответ Часовой пояс GMT +4, время: 05:18.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Теги
const , keywords

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


Часовой пояс GMT +4, время: 05:18.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.