![]() |
Цитата:
Цитата:
Код AS3:
Цитата:
Цитата:
Цитата:
котором был определен метод прослушивателя. Иными словами, если вы пользовались этим методом в ActionScript 2.0, ключевое слово this будет относиться к компоненту, осуществляющему широковещательную рассылку события, а не к экземпляру ChildSprite." Но справедливости ради надо отметить, что this еще именуется в документации как ссылка (на той же 109 странице, например), поэтому, я не могу быть увереным в своём понимании. |
Цитата:
UPD: вроде так и не поняли, что же это такое. this - это экземпляр класса, в методе которого этот this написан. Статики живут глобально и отдельно от экземпляров класса (чтоб их вызывать не нужно создавать экземпляр класса, например), нет экземпляра - нет this. Переменные типа класса - все ссылки, потому this - это тоже ссылка (т.е. при присвоении а = б, если а и б - классы, то копирование класса б не происходит, а а и б ссылаются на один обьект и если менять а, то будет меняться и б). Если что - поищите примеры использования %) И учите, блин, язык, а то чую написал китайскую грамоту =\ |
Вообще-то слово this положено писать обязательно, если обращаешься к свойству класса внутри него. AS3 позволяет во многих случаях быть безалаберным и не указывать this явно. Компилятор умеет разруливать во многих случаях такую ситуацию. Но в целом это плохая практика. Другие языки программирования как правило не позволяют писать так безалаберно.
Стандарты промышленного кодирования в конторах обычно не разрешают не писать this. То бишь неявное обращение к свойствам класса не приветствуется. |
Оффтоп:
Цитата:
|
По моему тут все зависит от реализации транслятора. Когда начинал учить с++ никак не мог подобрать книгу и компилятор к ней (не било у меня тогда доступа к и-нету). Вот и приходилось експериментировать.
Добавлено через 2 минуты Самое что запомнилось, так это первый мой прокол. В книге было написано Код:
#include <iostream>Код:
#include <iostream.h>Думаю ето может касаться и this. |
У меня такое правило: если в классе есть определение метода:
Код AS3:
Код AS3:
Код AS3:
|
Цитата:
|
Всегда пишу super и this. Выбор "надо"/"не надо" отнимает время впустую.
|
Все написанное ниже - это мое личное мнение и любое оспаривание моих слов... по крайней мере буду стараться игнорировать.
В посте №20 Wolsh меня шокировал. :) Знал что-то про наследование про то что подклассы - это классы с бöлбшим количеством свойств, но дальше не лез. Что бы там не говорили, теперь буду везде писать и this и super, а теперь и более серьезно относится к этим вещам. Руки от этого не отпадут, конвенция этого не запрещает. Мало того, считаю это хорошим тоном ЯВНО указывать к КОМУ ты обращаешься. ООП - он на то и ООП, что ты обращаешься к ОБЪЕКТАМ, а не к призракам. Это как писать точку с запятой в конце выражения, без которой можно и обойтись (это пример - не примите за новую ветку флуда; знаю что в случае с точкой с запятой есть объективные преимущества). Не знаю, обратил ли кто-то внимание на мои слова несколькими постами выше: у this действительно есть преимущества: скорость написания/чтения кода (сниппеты/распознавание переменных). А слова: Цитата:
На вопрос топикстартера: Цитата:
Добавлено через 10 минут Хотя, признаю что пример со скобой - плохой. Конвенция говорит, что надо писать в новой строчке, а я сам же дальше написал: "...если его стиль не нарушает правил...". Ну, что же - слово не воробей... Но, думаю, смысл понятен :) |
Цитата:
Код AS3:
|
| Часовой пояс GMT +4, время: 04:47. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.