typedef 的问题

[复制链接]
查看11 | 回复1 | 2008-12-3 10:50:29 | 显示全部楼层 |阅读模式
我看一程序时有
typedef bool PotentialObjectsListCallback( int numberOfObjects, long* objectNums, double* retStopDistance );
这个typedef是什么用法?是声明一个函数指针吗?
我也没有找到这个函数的定义
以后程序中有
bool KdTree::Traverse(const VectorR3& startPos, const VectorR3& dir, PotentialObjectsListCallback* polcFunc, double seekDistance, bool obeySeekDistance)
{ ...
bool stopFlag = (*((PotentialObjectsListCallback*)CallbackFunction))(currentNode->Data.Leaf.NumObjects,
currentNode->Data.Leaf.ObjectList, &newStopDist );
...
}

&newStopDist );

回复

使用道具 举报

千问 | 2008-12-3 10:50:29 | 显示全部楼层
今天又看>,终于有点明白了.以下是手册里的说明:typedef用于声明定义新的数据类型名,而不是函数与变量声明.数据类型名出现在变量声明中出现变量句的地方,数据类型本身是变量名要指定的类型.例子如下:typedef int *IP; //一个int指针typedef int (*FP)(); //指向返回int类型的函数指针typedef int F(int); //指向int参数,返回int类型的函数指针typedef double A5[5]; //数组,有5个类型为double元素typedef int A[]; //int数组有了上述声明之后,就可以进行下列声明:IP ip; //...
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行