Вариант первый (работает)
Код AS3:
var v:Vector.<Object> = new Vector.<Object>();
v.push(1.1);
v.push(2.2);
v.push(3.3);
v.push(4.4);
trace("v is Vector: " + (v is Vector));
trace("v is Vector.<*>: " + (v is Vector.<*>));
trace("v as Vector.<*>: " + (v as Vector.<*>));
trace("v as Vector.<Object>: " + (v as Vector.<Object>));
trace("v as Vector.<Number>: " + (v as Vector.<Number>));
typedArgument(v as Vector.<*>);
function typedArgument(value:Vector.<*>):void
{
trace("typedArgument() -> value: " + value);
}
Цитата:
v is Vector: false
v is Vector.<*>: true
v as Vector.<*>: 1.1,2.2,3.3,4.4
v as Vector.<Object>: 1.1,2.2,3.3,4.4
v as Vector.<Number>: null
typedArgument() -> value: 1.1,2.2,3.3,4.4
|
Вариант второй (не работает, что собственно и должно быть)
Код AS3:
var v:Vector.<Number> = new Vector.<Number>();
v.push(1.1);
v.push(2.2);
v.push(3.3);
v.push(4.4);
trace("v is Vector: " + (v is Vector));
trace("v is Vector.<*>: " + (v is Vector.<*>));
trace("v as Vector.<*>: " + (v as Vector.<*>));
trace("v as Vector.<Object>: " + (v as Vector.<Object>));
trace("v as Vector.<Number>: " + (v as Vector.<Number>));
typedArgument(v as Vector.<*>);
function typedArgument(value:Vector.<*>):void
{
trace("typedArgument() -> value: " + value);
}
Цитата:
v is Vector: false
v is Vector.<*>: false
v as Vector.<*>: null
v as Vector.<Object>: null
v as Vector.<Number>: 1.1,2.2,3.3,4.4
typedArgument() -> value: null
|
Цитата:
Что должно было бы быть в результате - не понятно.
|
RTE, что ж еще то.
Добавлено через 1 минуту
Кстати да. Вы попробуйте для начала создать
Код AS3:
var v:Vector = new Vector();