关于后置++中参数的问题请教
在定义后置++的函数,如下代码:
Coordinate Coordinate::operator++(int) { Coordinate old(*this); this->m_iX++; this->m_iY++; return old; }
问题1:为什么在operator++里传递的参数类型一定是int型的?
问题2:对于Coordinate old(*this);,实际上相当于定义了一个Coordinate类的old对象吧,并且还要传递*this。那么这个*this是coordinate类型的,那么对应的构造函数是哪个?
谢谢。