手机
当前位置:查字典教程网 >编程开发 >C语言 >探讨++i与i++哪个效率更高
探讨++i与i++哪个效率更高
摘要:答案:在内建数据类型的情况下,效率没有区别;在自定义数据类型的情况下,++i效率更高!分析:(自定义数据类型的情况下)++i返回对象的引用;...

答案:

在内建数据类型的情况下,效率没有区别;

在自定义数据类型的情况下,++i效率更高!

分析:

(自定义数据类型的情况下)

++i返回对象的引用;

i++总是要创建一个临时对象,在退出函数时还要销毁它,而且返回临时对象的值时还会调用其拷贝构造函数。

(重载这两个运算符如下)

复制代码 代码如下:

#include <iostream>

using namespace std;

class MyInterger{

public:

long m_data;

public:

MyInterger(long data):m_data(data){}

MyInterger & operator++(){

cout<<"Integer::operator++() called!"<<endl;

m_data++;

return *this;

}

MyInterger operator++(int){

cout<<"Integer::operator++(int) called!"<<endl;

MyInterger tmp = *this;

m_data++;

return tmp;

}

};

int main()

{

MyInterger a = 1;

a++;

++a;

return 0;

}

【探讨++i与i++哪个效率更高】相关文章:

深入分析C++中两个大数相乘结果不正确的问题

深入探讨:宏、内联函数与普通函数的区别

探讨C++中数组名与指针的用法比较分析

浅析c/c++中函数的参数传递

深入C++中构造函数、拷贝构造函数、赋值操作符、析构函数的调用过程总结

深入探讨:linux中遍历文件夹下的所有文件

探讨:用两个栈实现一个队列(我作为面试官的小结)

探讨:C++中函数返回引用的注意事项

关于C语言中参数的传值问题

浅析c与c++中struct的区别

精品推荐
分类导航