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

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

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 12.08.2008, 18:58
BlooDHounD вне форума Посмотреть профиль Отправить личное сообщение для BlooDHounD Посетить домашнюю страницу BlooDHounD Найти все сообщения от BlooDHounD
  № 31  
Ответить с цитированием
BlooDHounD
стервочка (я мужик)
 
Аватар для BlooDHounD

блогер
Регистрация: Mar 2004
Адрес: Борисов
Сообщений: 3,161
Записей в блоге: 22
x1, n1 - коровы
x2, n2 - деревья
Код:
var x1:XML = <xml />;
var x2:XML = <xml />;
trace( x1 == x2, x1 === x2 ); // true false

var n1:QName = new QName("a");
var n2:QName = new QName("a");
trace( n1 == n2, n1 === n2 ); // true false

var v1:Number = 5;
var v2:String = "5";
trace( v1 == v2, v1 === v2 ); // true false


Последний раз редактировалось BlooDHounD; 12.08.2008 в 19:02.
Старый 12.08.2008, 21:25
ulik вне форума Посмотреть профиль Отправить личное сообщение для ulik Посетить домашнюю страницу ulik Найти все сообщения от ulik
  № 32  
Ответить с цитированием
ulik
 
Аватар для ulik

Регистрация: Apr 2007
Адрес: Moscow city
Сообщений: 286
Отправить сообщение для ulik с помощью ICQ
BlooDHounD В чем смысл вашего выражения?
Цитата:
trace(x1 === x2 );
Результат всегда будет false ибо они ссылаются на разные объекты. Ну, и? Кстати, если уж на то пошло, то x1, x2 - коровы, а n1, n2 - деревья.
Ну, я и говорю, что я выражения такого типа не использую )

a = b;
c = d
a ? c - эт ж полное отсутствие какой-либо логики. Это из серии "копать от забора до обеда" - так вот я и говорю, что подобные глупые вопросы я не задаю.

Другое дело, когда оба ссылаются на один объект.
Цитата:
var a1:Array = new Array(5);
var a2:Array = a1;
var a3:Array = a1;
trace(a1 == a2, a1 === a2); // true true
trace(a2 == a3, a2 === a3); // true true
Но.... Зачем мне это? Я и так знаю кто и на что ссылается. Смысл этой проверки? Для склероза пока ранова-то

И, кстати, а вы частенько так делаете? Стринги с числами сравниваете? Компилятор, наверное, очень вас не любит и ругается постоянно...
Цитата:
var v1:Number = 5;
var v2:String = "5";
trace( v1 == v2, v1 === v2 ); // true false
Поясню, не true false, а как говорит логичный компилятор: 1176: Comparison between a value with static type Number and a possibly unrelated type String.
__________________
Дизайн, как презерватив - каждому жмет по-своему © Я
мое: блог форум


Последний раз редактировалось ulik; 12.08.2008 в 21:29.
Старый 12.08.2008, 21:57
BlooDHounD вне форума Посмотреть профиль Отправить личное сообщение для BlooDHounD Посетить домашнюю страницу BlooDHounD Найти все сообщения от BlooDHounD
  № 33  
Ответить с цитированием
BlooDHounD
стервочка (я мужик)
 
Аватар для BlooDHounD

блогер
Регистрация: Mar 2004
Адрес: Борисов
Сообщений: 3,161
Записей в блоге: 22
Цитата:
Сообщение от ulik Посмотреть сообщение
Результат всегда будет false ибо они ссылаются на разные объекты.
с чего бы? Вы думаете я код не проверял?
Цитата:
Сообщение от ulik Посмотреть сообщение
Кстати, если уж на то пошло, то x1, x2 - коровы, а n1, n2 - деревья.
из написанного Вами предложения Выше выходит обратное.
Цитата:
Сообщение от ulik Посмотреть сообщение
a = b;
c = d
a ? c - эт ж полное отсутствие какой-либо логики. Это из серии "копать от забора до обеда" - так вот я и говорю, что подобные глупые вопросы я не задаю.
что за бред Вы написали?
Цитата:
Сообщение от ulik Посмотреть сообщение
Другое дело, когда оба ссылаются на один объект.
если они ссылают на один объект, то они всегда дадут true.
Цитата:
Сообщение от ulik Посмотреть сообщение
Но.... Зачем мне это? Я и так знаю кто и на что ссылается. Смысл этой проверки? Для склероза пока ранова-то
что "это"? я знаю зачем Вам "это".
Цитата:
Сообщение от ulik Посмотреть сообщение
И, кстати, а вы частенько так делаете? Стринги с числами сравниваете? Компилятор, наверное, очень вас не любит и ругается постоянно... Поясню, не true false, а как говорит логичный компилятор: 1176: Comparison between a value with static type Number and a possibly unrelated type String.
ни разу не сравнивал. ругатся ругается, но компилит же

однако давайте опустим стринги и намберы, и вернёмся к предыдущим 2м объектам.


Последний раз редактировалось BlooDHounD; 12.08.2008 в 21:59.
Старый 13.08.2008, 00:10
Яски вне форума Посмотреть профиль Отправить личное сообщение для Яски Найти все сообщения от Яски
  № 34  
Ответить с цитированием
Яски

блогер
Регистрация: May 2008
Адрес: (0, 10, 185) в локальной системе
Сообщений: 721
Записей в блоге: 6
Цитата:
Сообщение от DarkLight Посмотреть сообщение
А еще, насколько я помню, === быстрее работает=)
Незначительно

Старый 13.08.2008, 13:49
ulik вне форума Посмотреть профиль Отправить личное сообщение для ulik Посетить домашнюю страницу ulik Найти все сообщения от ulik
  № 35  
Ответить с цитированием
ulik
 
Аватар для ulik

Регистрация: Apr 2007
Адрес: Moscow city
Сообщений: 286
Отправить сообщение для ulik с помощью ICQ
Цитата:
с чего бы? Вы думаете я код не проверял?
С чего? Мануал гляньте
Подсказка: ссылаются на разные объекты
Цитата:
что за бред Вы написали
дык, эт вы написали.
Цитата:
если они ссылают на один объект, то они всегда дадут true.
я вроде тоже самое и написал
Цитата:
Но.... Зачем мне это?
Код:
var a:Array = [ 1, 2 ,3 ];
var b:Array = a;
var c:Array = a;
trace(b === c);
Вот это зачем? У меня нет склероза. Зачем такие проверки? И где вы их видели/применяете ??
Цитата:
ни разу не сравнивал
Вот к чему я и писал. Что это не нужно.
Цитата:
но компилит же
- О_О дайте мне ваш компилятор
Не знаю, как у вас там что компилит, у меня компилятор "жесткий" логик
и разные типы данных он на отказ отказывается сравнивать со словами "Ты че, глупый, что ли?"

Цитата:
однако давайте опустим стринги и намберы, и вернёмся к предыдущим 2м объектам
А чего к ним возвращаться? Будет false, так же как и в случае с массивами. И вегда будет false, пока вы ссылочку им одинакомую не сделаете. Так вот я и спрашивал вас об этом! Зачем это нужно ??? Вы после написания 10 строк их сразу забываете ?
И зачем создавать два массива, скажем, которые ссылаются на один? Смысл?
__________________
Дизайн, как презерватив - каждому жмет по-своему © Я
мое: блог форум


Последний раз редактировалось ulik; 13.08.2008 в 13:59.
Старый 13.08.2008, 14:13
BlooDHounD вне форума Посмотреть профиль Отправить личное сообщение для BlooDHounD Посетить домашнюю страницу BlooDHounD Найти все сообщения от BlooDHounD
  № 36  
Ответить с цитированием
BlooDHounD
стервочка (я мужик)
 
Аватар для BlooDHounD

блогер
Регистрация: Mar 2004
Адрес: Борисов
Сообщений: 3,161
Записей в блоге: 22
Цитата:
Сообщение от ulik Посмотреть сообщение
С чего? Мануал гляньте
Подсказка: ссылаются на разные объекты
да. они ссылаются на разные объекты. я знаю. я так и написал. ничего противоречащего мануалу я не написал, а даже наоборот. только, плюс к этому, независимо от мануала, код работает. и должен работать.

Вы читать умеете?


Цитата:
Сообщение от ulik Посмотреть сообщение
дык, эт вы написали.
Цитата:
Сообщение от ulik Посмотреть сообщение
a = b;
c = d
a ? c - эт ж полное отсутствие какой-либо логики. Это из серии "копать от забора до обеда" - так вот я и говорю, что подобные глупые вопросы я не задаю.
это я написал?

Цитата:
Сообщение от ulik Посмотреть сообщение
я вроде тоже самое и написал
Код:
var a:Array = [ 1, 2 ,3 ];
var b:Array = a;
var c:Array = a;
trace(b === c);
Вот это зачем? У меня нет склероза. Зачем такие проверки? И где вы их видели/применяете ??
а где я такое написал? не выпускайте свою фантазию за пределы написанного мною. мы обсуждаем разные объекты а не ссылки одну на другую.
Цитата:
Сообщение от ulik Посмотреть сообщение
Вот к чему я и писал. Что это не нужно.
Выйдите за пределы стрингов и намберов, и просмотрите ВЕСЬ код приведённый мною.
Цитата:
Сообщение от ulik Посмотреть сообщение
О_О дайте мне ваш компилятор
Не знаю, как у вас там что компилит, у меня компилятор "жесткий" логик
и разные типы данных он на отказ отказывается сравнивать со словами "Ты че, глупый, что ли?"
боюсь, что компилятор у нас одинаковый, только Вы не видите, возможных ситуаций, а упёрлись в одну строчку

преведу Вам на другой уровень абстракции. не всегда мы работаем с известными типами данных. слишком часто мы не знаем, что нам подсовывают.
Код:
var compare1:Function = function(o1:Object, o2:Object):Boolean {
	return o1 == o2;
}

var compare2:Function = function(o1:Object, o2:Object):Boolean {
	return o1 === o2;
}

var x1:XML = <xml />;
var x2:XML = <xml />;
trace( compare1(x1,x2), compare2(x1,x2) ); // true false

var n1:QName = new QName("a");
var n2:QName = new QName("a");
trace( compare1(n1,n2), compare2(n1,n2) ); // true false

var v1:Number = 5;
var v2:String = "5";
trace( compare1(v1,v2), compare2(v1,v2) ); // true false
Цитата:
Сообщение от ulik Посмотреть сообщение
А чего к ним возвращаться? Будет false, так же как и в случае с массивами. И вегда будет false, пока вы ссылочку им одинакомую не сделаете. Так вот я и спрашивал вас об этом! Зачем это нужно ??? Вы после написания 10 строк их сразу забываете ?
И зачем создавать два массива, скажем, которые ссылаются на один? Смысл?
у Вас паранойя. Выключите воображение и нажмите CTRL+ENTER.

P.S.: писать код надо исходя из того, что разработчик, который будет его использовать - идиот. нельзя надеятся, что он будет делать именно то что Вы от него ожидаете. в отличии от написанного Вами кода, его поведения Вам не известно заранее.

P.P.S.: ulik, Вы мульт индейца?


Последний раз редактировалось BlooDHounD; 13.08.2008 в 14:28.
Старый 13.08.2008, 14:20
etc вне форума Посмотреть профиль Найти все сообщения от etc
  № 37  
Ответить с цитированием
etc
Et cetera
 
Аватар для etc

Регистрация: Sep 2002
Сообщений: 30,784
/me пошел жарить поп-корн

Старый 13.08.2008, 14:24
ulik вне форума Посмотреть профиль Отправить личное сообщение для ulik Посетить домашнюю страницу ulik Найти все сообщения от ulik
  № 38  
Ответить с цитированием
ulik
 
Аватар для ulik

Регистрация: Apr 2007
Адрес: Moscow city
Сообщений: 286
Отправить сообщение для ulik с помощью ICQ
Да вы. Вот же:
Цитата:
var x1:XML = <xml />;
var x2:XML = <xml />;
trace( x1 == x2, x1 === x2 ); // true false
Цитата:
var compare1:Function = function(o1:Object, o2:Object):Boolean {
return o1 == o2;
}

var compare2:Function = function(o1:Object, o2:Object):Boolean {
return o1 === o2;
}

var x1:XML = <xml />;
var x2:XML = <xml />;
trace( compare1(x1,x2), compare2(x1,x2) ); // true false

var n1:QName = new QName("a");
var n2:QName = new QName("a");
trace( compare1(n1,n2), compare2(n1,n2) ); // true false

var v1:Number = 5;
var v2:String = "5";
trace( compare1(v1,v2), compare2(v1,v2) ); // true false
Опять начинаете... Ок. Хоть одно приложение/случай, где подобная проверка нужна? Код в студию, пожалуйста... Я вам найду мин. 1 способ изменения структуры на более логичную, да бы не делать подобные проверки.

Нет, у меня паранои нет. Я прогматик. А данный код - лишние строки.
ulik, Вы мульт индейца? Это кто?! О_О
Вы меня с кем-то спутали.
__________________
Дизайн, как презерватив - каждому жмет по-своему © Я
мое: блог форум

Старый 13.08.2008, 14:26
ulik вне форума Посмотреть профиль Отправить личное сообщение для ulik Посетить домашнюю страницу ulik Найти все сообщения от ulik
  № 39  
Ответить с цитированием
ulik
 
Аватар для ulik

Регистрация: Apr 2007
Адрес: Moscow city
Сообщений: 286
Отправить сообщение для ulik с помощью ICQ
Даже ради интереса спрашивал у C# программистов соседнего отдела кто и когда использует. И ответ ведущего из них меня ни чуть не удивил. "Ни разу в жизни на практике не использовал". Этим все сказано. Пишите дальше )

Кстати, глянул Destiny клиент. Хм. Молодцы. Хорошо сделано. Вот только по самому гейм-плею есть косяки. Но эт я так...
__________________
Дизайн, как презерватив - каждому жмет по-своему © Я
мое: блог форум


Последний раз редактировалось ulik; 13.08.2008 в 14:29.
Старый 13.08.2008, 14:34
BlooDHounD вне форума Посмотреть профиль Отправить личное сообщение для BlooDHounD Посетить домашнюю страницу BlooDHounD Найти все сообщения от BlooDHounD
  № 40  
Ответить с цитированием
BlooDHounD
стервочка (я мужик)
 
Аватар для BlooDHounD

блогер
Регистрация: Mar 2004
Адрес: Борисов
Сообщений: 3,161
Записей в блоге: 22
Вы знаете, что при использовании методов поиска вида indexOf используется строгое сравнение? а switch .. case, как ни странно, тоже использует именно его? тоесть Вы ни разу не использовали это конструкции?
Код:
public final class XMLContainer extends EventDispatcher {

	public function XMLContainer() {
		super();
	}

	private var _xml:XML;

	public function get xml():XML {
		return this._xml.copy();
	}

	public function set xml(value:XML):void {
		if ( this._xml === value ) return;
		this._xml = value;
		super.dispatchEvent( new Event("changeXml" ) );
	}

}

Создать новую тему Ответ Часовой пояс GMT +4, время: 19:24.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

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

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


 


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


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