• Lunes 6 de Mayo de 2024, 19:06

Autor Tema:  problema con Punteros  (Leído 1039 veces)

basslawrence

  • Nuevo Miembro
  • *
  • Mensajes: 4
    • Ver Perfil
problema con Punteros
« en: Martes 13 de Octubre de 2009, 17:06 »
0
Tengo este codigo

int main
{
KeypointIter iter;
Keypoint* kp;

kp = (*iter);

return 0;
}

alguien sabe que significa o que pasa aqui??
kp = (*iter);

Gracias

r0d

  • Miembro activo
  • **
  • Mensajes: 37
  • Nacionalidad: fr
    • Ver Perfil
    • http://r0d.developpez.com/index-es.php
Re: problema con Punteros
« Respuesta #1 en: Martes 13 de Octubre de 2009, 18:14 »
0
Hola,

Supongo que la clase KeypointIter sobrecarga el operador de dereferenciación. Tiene que tener esta pinta:
Código: C++
  1. // eso es el operador de dereferenciación, y para que functione con el
  2. // codigo que nos has enseñado, tiene que devolver un Keypoint* :
  3. Keypoint* operator&(Integer& a);
  4.  
  5.  

Si quieres enteder bien lo que pasa, fijate el codigo siguiente, y ejecutalo con puntos de parada para ver lo que pasa:
Código: C++
  1. struct Dum
  2. {
  3.     Dum( int n = 0 ) : num(n) {}
  4.     int num;
  5. };
  6.  
  7. Dum* operator * ( Dum & dum ) { return &dum; }
  8.  
  9. int main()
  10. {
  11.     Dum dum(10);
  12.     Dum* pd = (*dum);
  13. //...
  14. }
  15.