0

所以我上了一个非常基础的课

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

我究竟做错了什么?非常感谢您的帮助。

4

3 回答 3

1

您的设置有问题。我拿走了你的代码并实现了它并且它有效。

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

import XmlLang;

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

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

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

于 2012-12-01T20:32:23.243 回答
1

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

所以这:

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

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

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

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

于 2014-04-23T22:23:07.530 回答
0

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

public function XmlLang(num:int = 0) {

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

于 2012-12-01T21:07:02.777 回答