新微赢技术网

标题: 函数默认参数的问题? [打印本页]

作者: 〢●●〢    时间: 2009-11-4 02:03
标题: 函数默认参数的问题?
函数默认的参数 也是在调用时 分配内存吗?
作者: 金马    时间: 2009-11-4 02:03
我认为是分配内存的
作者: ╰☆kiss寵壞    时间: 2009-11-4 02:03
不知道是不是在调用时分配...
作者: 玲珑之翼    时间: 2009-11-4 02:03
int f();
int g(int i=0);
int (*fun_1)() = f; //OK
int (*fun_2)() = g; //not OK
int (*fun_3)(int) = g; //OK;
很明显,默认参数只是个便宜事儿..。和其他函数一样...只是压参数的时候如果用默认值就压默认值,如果自己赋值就压自己的值.
作者: 阳光aiq浪子    时间: 2009-11-4 02:03
谢谢楼上的回答
也就是说 默认参数也只是在 调用时 才分配内存的
不过 没有默认参数 是在 调用 函数时 主调函数传递给 被调函数 形参的值 这时 才知道 再分配内存
而 有默认参数的时候 主调函数在没有 调用函数时 那默认参数在那里保存
作者: 皇家㊣贺v    时间: 2009-11-4 02:03
哦,学习了。。。
作者: 阳光aiq浪子    时间: 2009-11-4 02:03
LZ干嘛不用标点符号啊? 用那么多空格,看着费劲。。。
作者: 我是哈密瓜耶    时间: 2009-11-4 02:03
学习了啊
作者: 轻松由我    时间: 2009-11-4 02:03
函数的形参不占用空间,但是实参占用




欢迎光临 新微赢技术网 (http://bbs.weiying.cn/) Powered by Discuz! X3.2