这不起作用,抛出错误#1056:
m_cdictDeadConnections = new Dictionary();
m_cdictDeadConnections[1] = "f";
咦?这里的语法有什么问题?谢谢!
编辑:有几个答案指的是缺乏语法;我从类定义中获取变量。对此感到抱歉。编辑:为了进一步说明,错误#1056正在这行代码上抛出:
m_cdictDeadConnections[1] = "f";
除了一些非常模糊的语言规则之外,这似乎不应该是应该发生的事情。
答案 0 :(得分:1)
我看不出逻辑有什么问题。只需确保语法正确。
var dictionary:Dictionary = new Dictionary();
答案 1 :(得分:1)
如此处的文档http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/flash/utils/Dictionary.html
所述Dictionary类允许您创建动态的属性集合
动态地,字典在对象上创建属性,并将您在括号中指定的内容用作标识符。
如果要创建由int索引的对象,请更喜欢使用数组。
var myArray:Array = new Array();
myArray[0] = ""
myArray[1] = "f";
如果您想要哈希,请使用Object。该对象将由字符串索引:
var myObject:Object = new Object();
myObject["1"] = "f";
您可以在http://help.adobe.com/en_US/as3/dev/WS5b3ccc516d4fbf351e63e3d118a9b90204-7eea.html
找到有关如何创建这些数据结构的更多信息编辑: 它在我的笔记本电脑上工作正常,因此它应该能够实例化一个名为1的属性。
答案 2 :(得分:1)
您错过了var
关键字:
var m_cdictDeadConnections:Dictionary = new Dictionary();
m_cdictDeadConnections[1] = "f";
(我也给了var一个类型:Dictionary
- 这是一个非常好的习惯!)
答案 3 :(得分:0)
我认为您的代码没问题。
就像你说的那样: “我从类定义中获取变量”我建议您在插入值后跟踪对象。
m_cdictDeadConnections = new Dictionary();
m_cdictDeadConnections[1] = "f";
trace....
因为m_cdictDeadConnections是一个变量,所以它可能被其他代码更改或清除。 希望这可以帮到你。