3
在C++中,什么是临时分配,什么时候使用? 这样的事情是否存在? 它在TA的课程笔记中提到,但我找不到任何有关它的信息...什么是临时分配?
在C++中,什么是临时分配,什么时候使用? 这样的事情是否存在? 它在TA的课程笔记中提到,但我找不到任何有关它的信息...什么是临时分配?
当人们说“临时”时,他们经常提到rvalues。这是创建的对象,而不是绑定到变量名称,因此不在当前语句之外。 IE:
int foo()
{
Do(Object());
}
创建的对象()是一个右值,您可能会听到它称为临时值。
我怀疑你的TA可能是指在表达式评估过程中没有创建名字的对象。
SomeClass x(1), y(2), z(3);
SomeClass t = x + y + z;
表达x + y + z
调用operator+()
两次;第一个的结果是临时分配(第二个的初始化结果为t
)。
从http://publib.boulder.ibm.com:[临时对象(仅限C++)](http://publib.boulder.ibm.com/infocenter/comphelp/v8v101/index.jsp?topic=/ com.ibm.xlcpp8a.doc/language/ref/cplr382.htm) – miku 2010-07-23 13:46:17
我认为这不值得使用C++标记,因为它可以应用于几乎所有的编译器或语言 – 2010-07-23 13:52:11