string v= s+a+b+c; 临时对象有: temp1=s+a; temp2=temp1+b; temp3=temp2+c; 在临时对象3时 临时对象1 虽然已经没有什么用了,但是要等到整个表达式完成后才可以释放内存.
凡是含有表达式执行结果的临时对象,应该保留到对象的初始化操作完成为止.
上面的表达式产生了3个临时对象,在整个表达式结束后,temp1,temp2 将被释放,temp3 要等到 v=temp3 后方可释放.
string v= s+a+b+c; 临时对象有: temp1=s+a; temp2=temp1+b; temp3=temp2+c; 在临时对象3时 临时对象1 虽然已经没有什么用了,但是要等到整个表达式完成后才可以释放内存.
凡是含有表达式执行结果的临时对象,应该保留到对象的初始化操作完成为止.
上面的表达式产生了3个临时对象,在整个表达式结束后,temp1,temp2 将被释放,temp3 要等到 v=temp3 后方可释放.