ActionScript3での関数ポインタの使い方



ActionScriptで関数ポインタは使えるのか?ググってみたが、ピンと来ない情報ばかりです。
Flex3SDKリファレンスに書いていないか?と思い調べてみたら普通に書いてありました。




C言語の関数ポインタ

#include <stdio.h>

void (*func[3])(int a, int b);

void a(int a, int b);
void b(int a, int b);
void c(int a, int b);
int main(int argc, char *argv[])
{
    int i;
    func[0] = a;
    func[1] = b;
    func[2] = c;

    for(i = 0; i < 3;i+) (*func[i])(i, i*i);

   return 0;
}
void a(int a, int b) { printf("a + b = %d",a + b); } 
void b(int a, int b) { printf("a - b = %d",a - b); } 
void c(int a, int b) { printf("a * b = %d",a * b); } 





ActionScript 3で関数ポインタ?

private function a(a:int, b:int):void { trace("a + b = " + (a + b)); }
private function b(a:int, b:int):void { trace("a - b = " + (a - b)); }
private function c(a:int, b:int):void { trace("a * b = " + (a * b)); }

var func:Array;
funcArray = new Array();

funcArray.push(a);
funcArray.push(b);
funcArray.push(c);

for(var i:int = 0; i < funcArray.length;i++)
{
    funcArray[i](i,i*i);
}