函数返回值传接采取值传递时,返回局部变量是不是正确的

函数返回值传递采取值传递时,返回局部变量是不是正确的?
看了林锐的《高质量C++编程指南》,里面说在按常量引用返回时,函数返回值不能返回局部变量,而返回值有可能是对的,也有可能是错的,这取决于编译器释放局部变量所使用的内存的速度,那么现在问题就是我自己编的程序:
(1)如果是函数返回值采取的是值传递,那么局部变量作为返回值是不是应该就没问题。
(2)如果函数采取常量引用返回时,是不是像int这种内部变量在成为局部变量时也不能作为函数返回值。


谢谢各位~~~~

------解决方案--------------------
(1)是。LS注意LZ的“问题”是什么。指针值和这个问题无关。
(2)未必不能返回局部变量的有效引用。关键是生存期,像返回局部静态变量的引用就是可以的。不要返回自动对象的引用。
------解决方案--------------------
(1)是,但值传递是整个复制,影响效率。
(2)是,局部变量在栈中,当函数返回时,栈会被销毁