On Thu, Feb 12, 2004 at 03:54:43PM +0100, [EMAIL PROTECTED] wrote:
> 
> > 
> > De: Jean-Francois Dive <[EMAIL PROTECTED]>
> 
> > oui mais le probleme c'est: l'operateur de quel object ? Aussi loin que
> > je sache, "bla" c'est une string (4 bytes en memoire), pas un obect sur
> > lequel tu appelle la methode operator(). Le + machin ok, c'est juste
> > pour montrer que le casting de la string resulte bien en un object.
> > 
> > > 
> > > | AnsiString jef = (AnsiString)"This is a string" + 10;
> 
> Je vois ?a comme ?a
> AnsiString jef= (AnsiString)"This is a string"
> Donc cast "This is a string" dans ansiString qui appelera le constructeur de copie 
> pour l'assignation =, il n'y a pas appel au constructeur ni cr?ation d'objet (d?pend 
> du compilo ???).

il n'appellera pas le constructuer de copie mais l'operator=() de
l'object jef je pense. 

> 
> Cela vient du C,  struct my_struct f=(struct my_struct) g; ou on cast g dans un 
> object my_struct ! Je pense que c'est ? ?viter, mauvaise habitude. 
> 

le truc en C c'est que un cast change le type du pointer, c'est tout.
Ici, il se passe kkchose derriere et c'est ca que j'aimerais comprendre. 

...

> On aurait du avoir AnsiString jef=AnsiString("This is a string")+10, point de vue 
> perso j'suis pas un gourou du tout !!!!
> 
> Enfin mes 2 cents quoi :)
> 
> A+,
> 
> D.
> 
> 
> _______________________________________________________
> Linux Mailing List - http://www.unixtech.be
> Subscribe/Unsubscribe: http://www.unixtech.be/mailman/listinfo/linux
> Archives: http://www.mail-archive.com/[EMAIL PROTECTED]
> IRC: chat.unixtech.be:6667 - #unixtech

-- 

-> Jean-Francois Dive
--> [EMAIL PROTECTED]

  I think that God in creating Man somewhat overestimated his ability.
  -- Oscar Wilde
_______________________________________________________
Linux Mailing List - http://www.unixtech.be
Subscribe/Unsubscribe: http://www.unixtech.be/mailman/listinfo/linux
Archives: http://www.mail-archive.com/[EMAIL PROTECTED]
IRC: chat.unixtech.be:6667 - #unixtech

Répondre à