2013年11月9日

如果返回结构体类型变量(named return value optimisation,NRVO) ------ 续

摘要: 为什么?《More C++ idioms》: 3. Algebraic Hierarchy程序执行的流程与自己想的不一样: Number Number::makeReal(double r){Number tx; return tx} main: Number t = Number::makeReal(10); 自己想的应该是:先生成tx(默认构造); 返回时需要一个临时量temp,并以tx初始化(拷贝构造),而后用temp初始化 t (拷贝构造); 实际执行流程是:生成tx(默认构造),tx就是t理解好C语言,自然就知道原因了,见:http://www.cnblogs.... 阅读全文

posted @ 2013-11-09 21:17 阿加 阅读(436) 评论(0) 推荐(0) 编辑

导航