-
前置++ 需要返回自增之后的值,所以需要返回&。 后置++ 需要返回自增之前的对象,所以不需要返回&,需要在函数形参处传入(into)作为后置标志。系统默认传0进去。(类 old(*this); this->m_iX++; this->m_iY++; return old; 是返回old)查看全部
-
++运算符重载: 1.前置重载 声明: class Coordinate { public: Coordinate& operator++(); ... } //定义 Coordinate& Coordinate::operator++() { m_iX++; m_iY++; return *this; } //调用 Coordinate coor1; ++coor1; //coor1.operator++(); 2.后置重载 声明: class Coordinate { public: Coordinate operator++(int); //返回值对象而不是引用;int标识是后置符号,使用时不传入任何值。 ... } //定义 Coordinate operator++(int) { Coordinate old(*this); m_iX++; m_iY++; return old; } //调用 Coordinate coor1; coor1++; //coor.operator++(0)查看全部
-
友元函数 外部函数可访问私有成员数据 友元成员函数 外部类成员函数可访问私有成员属性 友元类 外部类内可以实例化类并访问其私有成员属性 谁是谁的友元 B是A的友元,表示B是A的朋友,B可以访问A的私有数据,但B并不认为A是B的朋友,因此,友元是单向的查看全部
-
朋友关系,体现在函数上就是友元函数,体现在类上,就是友元类。全局函数声明为友元,就是友元全局函数 友元的关键字是:friend 友元函数其实就是一个函数的声明,同时一定要传入当前这个类的一个对象或者是一个引用或者是它的指针,总之就是要能够通过这个函数,访问到这个对象当中私有的数据成员,或者是保护的数据成员 传递引用或者是指针,它的传递速度更快,执行效率更高,不提倡直接传入对象的方式 友元会破坏封装性查看全部
-
向量初始化及使用查看全部
-
定义和实现不能分开查看全部
-
只定义不使用就不会产生代码查看全部
-
从this指针谈静态成员函数不能调用非静态数据成员和非静态成员函数 静态成员函数不含this指针,无法调用非静态数据成员和非静态成员函数 调用静态数据成员可以不通过对象和静态成员函数,因为静态数据成员和静态成员函数不属于任一对象,它们可看做全局变量和全局函数查看全部
-
关于友元的注意事项 友元是封装的补充,破坏了封装性,若设计得当,可以避开使用友元查看全部
-
结合大型开源项目讲C++等语言(3D打印机:Marlin源码;无人机:APM源码;人工智能:Tensorflow)查看全部
-
vector对象方式初始化查看全部
-
变量和typename混用查看全部
-
多参数作为函数模板查看全部
-
typename和class 可以混用查看全部
-
变量作为模板参数查看全部
举报
0/150
提交
取消