Нет, не по стандарту.Если элементы не являются одним из основных типов, вы можете создать Вектор интерфейсов или суперклассы.Например, вектор объектов DisplayObject, которые содержат смесь видеороликов и спрайтов (которые оба наследуются от объекта DisplayObject).
Например:
var v:Vector.<DisplayObject> = new <DisplayObject>[
new MovieClip(),
new Sprite(),
new MovieClip()
];
trace(v[0].alpha); // outputs 1
trace(v[0].currentFrame); // error - not a DisplayObject property
В этом случае элемент вектороввыставить свойства и методы самого себя, которые проистекают из типа Векторы.Но это именно та причина, по которой вы должны использовать векторы, это гарантирует тип элементов, с которыми вы работаете.
Я не знаю вашего конкретного случая или цели, но я бы подумал, зачем вам нужен смешанный тип в векторе.Как вы сказали, альтернативным вариантом будет создание класса-оболочки.Приведенный ниже пример далеко не завершен, но является отправной точкой.
class Wrapper {
public var _value:*; // should be private with get/set's
public function Wrapper(value:*) {
if(value is String || value is Number) {
_value = value;
}
}
}