作者caml (suitengu)
看板PLT
标题Re: [问题] 请问call by address
时间Wed Apr 11 10:15:43 2007
: 推 jtmh:这里的 object 指的是 variable, 在 K&R C 那本常看到这麽用 04/01 00:48
: 推 tinlans:一楼正解,PL 教科书和 C 标准规格书也会这样用。 04/01 08:35
: 推 caml:c的传值会生成temp obj?? c++学太多了吧 04/01 09:40
: 推 Lordaeron:这就是问题了, object 以现在的眼光来看, 另有意义了. 04/01 09:59
: 推 tinlans:回三楼,&var 确实会生成一个 temp obj。 04/06 03:37
你到wiki上查一下evaluation strategy
在call by reference条目下﹐
If the argument expression is an L-value, its address is used.
Otherwise, a temporary object is constructed by the caller and
a reference to this object is passed; the object is then discarded
when the function returns.
--
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 211.150.229.195
1F:推 godfat:这不也是表达 var 是 obj...? 04/11 12:04
2F:推 caml:我说的意思是c传值不产生什麽temp obj, 传个地址还生成obj 04/11 12:17
3F:→ caml:效率太低了。 04/11 12:21