当前位置导航:炫浪网>>网络学院>>编程开发>>C++教程>>C++基础入门教程

C++编程时避免产生临时(隐式)对象

    产生一个对象,如果这个对象很大并且这个对象是在一个循环里面产生的,是特别耗资源的,因为编译器要找到一块合适的内存,如果没有合适的还要整理磁盘碎片并合并为一块合适的对象存储区。因此,在编程中一定要小心的产生临时对象。

    当然,编译器产生临时变量往往对我们是很方便的,这和临时对象是不一样的。

    首先看下面这个例子:

 #include <stdio.h>

class A
{
public:
A()
{
printf("A created.\n");
}
A(A& a)
{
printf("A created with copy\n");
}
~A()
{
printf("A destroyed.\n");
}
};

A foo(A a)//产生第二个对象
{
A b;//产生第三个对象
return b;
}

int main()
{
A a;//产生第一个对象
a=foo(a);//产生第四个对象
return 0;
}

相关内容
赞助商链接