flash – 在ActionScript 3.0中缺少操作符重载

在ActionScript中我最想错过的一件事是缺乏操作符重载,特别是==.我通过在我的类中添加一个“比较”方法来解决这个问题,但是在许多情况下,就像当你想要使用内置的“字典”这样的东西时,这样做并不有帮助.

有没有办法解决这个问题?

解决方法

不.

但是,不要在自己的类中添加equals方法.当我们比较对象时,我试图永远不要使用==(对于对象来说也是一样的===,因为它只是检查身份).

令人遗憾的是,Flash和Flex中的所有集合都假定身份是唯一需要的平等度量.

Flex中有一些提示有人想要同时减轻这个问题,但是它似乎被遗弃了:有一个名为IUID的接口,它在Flex开发人员指南中提到,但它并没有在任何地方使用.即使Flex中的集合也不能使用它来确定平等.而且,由于您正在为Flash寻求解决方案,所以可能还没有帮助您.

我在博客:Is there no equality?上写了一些关于这个(在Flex的上下文中).

相关文章

  译序:JWMediaPlayer是开源的网页使用的Flash播放器。本...
    Flash编程原理都是只能将1写为0,而不能将0写成1.所...
 上传setenvgatewayip192.168.1.1;setenvserverip192.168.1...
Error:FlashDownloadFailed-"Cortex-M3"出现一般有...
jPlayer是一个用于控制和播放mp3文件的jQuery插件。它在后台...
#ifndef__FONTUPD_H__#define__FONTUPD_H__#include"sy...