C++中为什么要用指针,而不直接使用对象
2个回答
展开全部
如果每一次赋值、每一次传参都是直接使用对象的话,对于大型软件或者服务端软件来说将是一个性能上的灾难。
假设是32位的平台,指针的传递只需要操作4个字节、指针的拷贝和保存也只需要4个字节;而对象呢?C++中貌似一个空对象都至少占一个字节,中大型的商用软件(特别是GUI软件)中几乎不可避免会有大对象,可能几百字节甚至几百KB。那么很显然,传递、拷贝指针而不是对象是要快的多的,保存指针的副本而不是对象的副本是可以节省大量内存的。
事实上,就算是C#这种语言,在大多数情况下也不会直接去传递、拷贝对象,而是传递对象的引用。
假设是32位的平台,指针的传递只需要操作4个字节、指针的拷贝和保存也只需要4个字节;而对象呢?C++中貌似一个空对象都至少占一个字节,中大型的商用软件(特别是GUI软件)中几乎不可避免会有大对象,可能几百字节甚至几百KB。那么很显然,传递、拷贝指针而不是对象是要快的多的,保存指针的副本而不是对象的副本是可以节省大量内存的。
事实上,就算是C#这种语言,在大多数情况下也不会直接去传递、拷贝对象,而是传递对象的引用。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询