函数指针理解 看不明白

typedef int (MainFunc) LDAP_P(( int argc, char *argv[] ));
extern MainFunc slapadd, slapcat, slapdn, slapindex, slappasswd,slaptest, slapauth, slapacl, slapschema;
这个定义该怎么理解?谁可以讲讲。

MainFunc被定义成指向某种函数的指针类型,后面一条语句是声明了多个这种指针类型的变量