一:在类外:
class CBinTreeNode;
class CBinTree;
typedef void (CBinTree::*Traverse) (CBinTreeNode* curr) ;//函数指针,并把它
定义成一个类型.
class CBinTree
{
Traverse traverse ;
public:
CBinTree()
{ traverse = &CBinTree::PostTraverse;}
void PreTraverse(CBinTreeNode* curr );
}
二:在类内:
class CBinTree
{
public:
void PreTraverse(CBinTreeNode* curr )
{ fn(&CBinTree::PreTraverse ); }
void fn ( void (CBinTree::*T)(CBinTreeNode* curr) );
}