LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
12
返回列表 发新帖
楼主: hoho_zhao

是编译器给函数分配空间?还是运行过程中申请空间?还是???

[复制链接]
发表于 2007-1-5 22:21:26 | 显示全部楼层
Post by DoDo
我指的当然是属性了,这是针对楼主的那个猜测而说的。
函数哪有不分配空间的,这只要看看 gcc -S 的结果也可以知道


lz 问的主要是函数是否分配空间的问题.
另外, 如果一个成员函数不被调用的话, 也不会生成相关的代码, 可以用 g++ -S 试试
回复 支持 反对

使用道具 举报

发表于 2007-1-5 23:36:38 | 显示全部楼层
多亏 rickxbx 兄的提醒,否则我还认为认为 C++ 和 C 一样,在不加优化的情况下,不被调用的函数也会生成代码,所以我才想当然地认为楼主不可能会讨论关于函数的问题,所以才讨论了关于成员变量的问题,并且提出了错误的观点。不用 C++ 好多年……
回复 支持 反对

使用道具 举报

发表于 2007-1-6 10:32:58 | 显示全部楼层
更正一下, 成员函数不是被调用才有空间, 而是被引用就会有空间(例子如我前面给出的, 虽然没有调用,但是有引用(输出地址))
c++ 其实跟 c 应该是一样的, 没有看见空间,只是因为被优化掉了.
回复 支持 反对

使用道具 举报

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

本版积分规则

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