PDA

Ver la Versión Completa : Sobre swap


Angel.Matilla
02-02-2022, 10:06:52
Tengo que intercambiar los valores de sendos TEdit y estaba leyendo la ayuda de este comando pero no me aclara si también vale para intercambiar el valor de dos AnsiString. Pongo este código:
#include <algorithm>
std::swap(Desde->Text, Hasta->Text);
y al compilar me da este error:
E2285 Could not find a match for ‘_STL::swap<_Tp>(AnsiString, AnsiString)’
que no acabo de entender.

escafandra
02-02-2022, 20:16:47
Son cosas de las propiedades estilo delphi. Si haces esto

AnsiString &S1 = Edit1->Text; AnsiString &S2 = Edit2->Text;
swap(S1, S2);

Compila e intercambia S1 y S2 pero no veras el cambio en los Edit. Date cuenta que las propiedades de manejan internamente con funciones Set y Get que son las que asignan el valor o muestran la propiedad interna del componente. Aunque parezca que accedes a ésta de forma directa, en realidad no lo haces.


Saludos.

Angel.Matilla
03-02-2022, 10:02:06
Muchas gracias. No se me había ocurrido.