el papel de este puntero
- El efecto es que este puntero se puede utilizar en una función miembro no estática para representar un puntero al objeto sobre el que actúa la función.
- Devuelve el objeto en sí
return *this
- Compare si este objeto es en sí mismo
if(this == &object)
p.ej.
class A{ ... public: void Hello() { cout<<"hello"<<endl;} ...}; int main() { A* P =NULL; P->Hello(); ... }
hello
La esencia de la salida de la función Hola: elvoid Hello(A* this){ ...}
puntero llama a la funciónHello(P)
, y la salida hola no requiere ninguna miembros del objeto, por lo que la salida es correcta. Si desea generar miembros, habrá un error, porque los objetos no tienen sentido
este puntero y los miembros estáticos funcionan
Las funciones miembro estáticas no pueden usar este puntero, porque las funciones miembro estáticas no pertenecen a ningún objeto, por lo que el número real de parámetros de las funciones miembro estáticas es lo que ve, no hay un número de parámetro implícito.