找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 3067|回复: 1

[通用编程] 问个声明方面的问题

[复制链接]
发表于 2008-8-16 22:07:06 | 显示全部楼层 |阅读模式
书上说没有
int  f[]();
这样的声明,解释说,数组元素必须具有相同的长度,但不同的函数显然可能具有不同的长度.

请问这话怎么理解呢?
发表于 2008-8-24 10:50:39 | 显示全部楼层
比如
int arrInt[10] 中 每个元素的大小都是sizeof(int)
double arrDouble[10]中 每个元素的大小都是sizeof(double)
由于声明时类型确定,所以数组中每个元素的的大小都是一样的

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

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

以上是个人的理解。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|幻想森林

GMT+8, 2026-11-6 16:42 , Processed in 0.010330 second(s), 16 queries .

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表