c++的临时变量
最近被c++的临时变量搞了好久,极其郁闷。望各位大神解救我于苦海。
首先,临时变量的产生是在函数传递参数和返回值时产生的,然后我又上网搜了很多临时变量的内容,众说纷纭。
一个是:
产生临时变量的三种情况:一:以By Value的方式传值;二:参数为const的类型。三:类型转换
一:以By Value的方式传值。
一个是:
如果实参与引用参数不匹配,C++将生成临时变量。如果引用参数是const,则编译器在下面两种情况下生成临时变量:
实参类型是正确的,但不是左值
实参类型不正确,但可以转换为正确的类型
搞得我好乱啊!
大神们能不能解释一下?
值传递能不能产生临时变量,还有我们都知道值传递是有一个实参的副本,那这个副本是临时变量吗?
另外const实参是怎样生成临时变量的?
返回值又是怎样产生临时变量的?
C++的大神们,拜托了( •̥́ ˍ •̀ू )。