Chr*_*oot 5 flash templates class actionscript-3
如何在AS3中定义类似C++的模板?我有一个地图类(2d数组),我想在项目中重复使用,但单元格数据是一个不同的类,具体取决于项目或实现;
关于在不同的实现中共享代码有很多其他原因,但我希望有类似的东西:
map = new MyMap<MyCell>();
Run Code Online (Sandbox Code Playgroud)
如果它只是Flash 10并不重要:-p
干杯,克里斯
没有模板,但动态类型和使用类作为值可能足以满足您的需要.
您可以创建一个接受类的类并将其存储为实例变量.
class MyMap {
var myClass:Class;
function MyMap(c:Class){
myClass = c;
}
}
Run Code Online (Sandbox Code Playgroud)
然后你把课程喂给它......
map = new MyMap(MyCell);
Run Code Online (Sandbox Code Playgroud)
然后在方法中,您可以参考该类.
// Inside MyMap somewhere
var someWhatever:Object = new myClass();
// or
var someWhatever:Object = Object(myClass).someCachingSchemeStaticMethod();
// or whatever.
Run Code Online (Sandbox Code Playgroud)