august 发表于 2008-8-16 22:07:06

问个声明方面的问题

书上说没有
intf[]();
这样的声明,解释说,数组元素必须具有相同的长度,但不同的函数显然可能具有不同的长度.

请问这话怎么理解呢?

诸神的曙光 发表于 2008-8-24 10:50:39

比如
int arrInt 中 每个元素的大小都是sizeof(int)
double arrDouble中 每个元素的大小都是sizeof(double)
由于声明时类型确定,所以数组中每个元素的的大小都是一样的

像int f[]()这个,字面上看或许是想声明“一组函数”,虽然能够确定这组函数的返回值(int)和参数(void),但是每个函数的长度确是不确定的。这样一来便无法随机访问诸如f(),f()等,失去了数组存在的意义。

从使用的角度讲或许这里应该用函数指针来代替。

以上是个人的理解。
页: [1]
查看完整版本: 问个声明方面的问题