Passage de paramètre par référence
	
	
		Bonjour a tous!
Une petite question qui me turlupine, pour l'illustrer prenons un exemple bateau:
	Code:
	
1 2 3 4 5 6 7
   | void Exchange( AnsiString &s1, AnsiString &s2 )
{
  AnsiString tmp ;
  tmp = s1;
  s1  = s2;
  s2  = tmp;
} | 
 Je veux maintenant échanger le contenu de 2 TEdits :
	Code:
	
1 2 3 4 5 6 7 8 9 10 11 12 13
   | void __fastcall TForm1::BitBtn1Click(TObject *Sender)
{
  Exchange( Edit1->Text, Edit2->Text ) ;
}
//---------------------------------------------------------------------------
void __fastcall TForm1::BitBtn2Click(TObject *Sender)
{
  AnsiString tmp1 = Edit1->Text ;
  AnsiString tmp2 = Edit2->Text ;
  Exchange( tmp1, tmp2 ) ;
  Edit1->Text = tmp1 ;
  Edit2->Text = tmp2 ;
} | 
 Pourquoi est ce que la première version ne marche pas, et qu'en passant par des variables temporaires (2ème version) ça fonctionne??