我的意思是,我是否必须通过AS或通过清除Flash中的关键帧来删除DisplayObject对象?还是一样的?
是否"必须"删除它们取决于您想要做什么。您必须从显示列表中删除它们(使用removeChild()
),以便垃圾收集器收集它们(并释放它们的内存)。清除Flash Pro中的关键帧将导致对象从舞台上删除,但我不确定它是否也从内存中删除(因为它可能会在它再次出现时保留,例如在循环的MovieClip中。)
delete
关键字在ActionScript中很少使用,特别是与c++不同的方式,例如,它用于释放对象的内存。相反,delete
只能用于移除动态对象的属性,例如
var obj : Object = {};
obj.name = 'foo'; // Creating the name property on dynamic Object
delete obj.name; // Removing the name property
trace(obj.name); // "undefined"
请尽量澄清你的问题。如果你给出一些背景信息,可能会更容易得出你真正想问的是什么,并给出一个更相关的答案。