2 sandykid SandyKid 于 2014.10.29 18:23 提问

c++面向对象对效率有影响吗?

例如 我用面向过程的方式写个排序算法,定义一个全局变量然后直接主函数排序 对比 我把这个排序封装成类, 里面有一个数组,数组初始化方法,排序方法和访问方法。 在初始化、排序等操作都相同的情况下,类会影响到执行效率吗?

有一点点影响也请告知说明,因为实际程序的数据量较大,在考虑要不要对数据封装成实体类后再处理。

2个回答

zuoyigexingfude
zuoyigexingfude   2014.11.01 13:58

影响可能会在寻址时产生,用OOP以后目标码变大,缓存击中率会下降。我个人认为

happyparrot
happyparrot   Ds   Rxr 2014.11.05 17:17

影响总是会有的。比如函数调用也会有堆栈操作处理。
面向对象主要的目标是解决系统的模块独立性,可读性,可扩展性等,对性能应该没有明显的好处,甚至会有更大的消耗。

Csdn user default icon
上传中...
上传图片
插入图片