AS3参数错误#1063 ...预期1得0

时间:2012-12-01 19:37:53

标签: actionscript-3 flash flex actionscript-2 flex4.5

所以我得到了一个非常基础的课程

package  {

    import flash.display.MovieClip;

    public class XmlLang extends MovieClip {

        public function XmlLang(num:int) {
            trace(num);
        }
    }
}

和第一帧的对象:

var teste:XmlLang = new XmlLang(1);

我收到了这个错误:

ArgumentError:错误#1063:XmlLang()上的参数计数不匹配。预计1,得到0

我做错了什么? 非常感谢你的帮助。

3 个答案:

答案 0 :(得分:1)

你的设置有些不对劲。我拿了你的代码并实现了它并且它有效。

这就是我的所作所为。我在AS3中创建了一个新的test.fla文件,并将以下代码放在第1帧 - 舞台上没有对象,只是第1帧中的代码。

import XmlLang;

var teste:XmlLang = new XmlLang(1);
stop();

创建一个XmlLang.as文件,准确复制代码并将其保存在与test.fla相同的文件夹中。编译并得到了1的痕迹

所以我不确定发生了什么。你在运行什么版本的Flash?

答案 1 :(得分:1)

不确定这是否属于您的情况,但对于未来的googlers:当您尝试初始化向量但忘记new关键字时,会收到此错误消息。

所以这个:

var something:Vector.<Something> = Vector.<Something>();

会给你一个错误,说Something参数计数不匹配。正确的行是:

var something:Vector.<Something> = new Vector.<Something>();

难以理解的错误一目了然。花了几分钟时间在我的代码中找到它,特别是因为它并没有真正给你错误行。

答案 2 :(得分:0)

我希望你有一个位于舞台上的XmlLang实例,它将使用带有0个参数的构造函数构建,就像普通的MovieClip一样。要检查这一点,请将构造函数标题更改为:

public function XmlLang(num:int = 0) {

这样,如果某些内容在没有提供参数的情况下实例化XmlLang,则新实例将接收0(默认值)作为参数。然后检查跟踪输出,我希望出现一个或多个零,然后是1。