Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   C++ Builder (https://www.clubdelphi.com/foros/forumdisplay.php?f=13)
-   -   IntToStr() (https://www.clubdelphi.com/foros/showthread.php?t=75190)

lmpadron 03-08-2011 22:25:12

IntToStr()
 
Hola familia

Al tratar de convertir esto

Código:

IntToStr(DBLookupComboBox1->KeyValue)
Me da este error

Cita:

[C++ Error] Unit2.cpp(85): E2015 Ambiguity between '_fastcall Sysutils::IntToStr(__int64)' and '_fastcall Sysutils::IntToStr(int)'
Alguna idea de como solucionarlo ??

ecfisa 03-08-2011 22:42:16

Hola impadron.

Podrías hacer:
Código:

...
AnsiString s;
  s = VarToStr(DBLookupComboBox1->KeyValue);
  ShowMessage(s);
...

Saludos.

_cero_ 03-08-2011 23:06:35

El error mismo dice que hay ambigüedad con "IntToStr" es decir que el compilador no sabe si usar IntToStr(int) o IntToStr(__int64).
Solución:
Código:

IntToStr( ( int )c1->KeyValue ); //Solución 1, conviertes el variant a int

//ó

IntToStr( ( __int64 )c1->KeyValue ); //Solución 2, conviertes el variant a __int64


ecfisa 04-08-2011 00:39:03

Hola.

Solo para agregar que usando los cast (int) o (__int64) se puede generar error si el valor de KeyValue es NULL, por lo que habría que evaluar la posibilidad:
Código:

...
AnsiString s;
  if (!DBLookupComboBox1->KeyValue.IsNull()) {
    s = IntToStr(( int )DBLookupComboBox1->KeyValue);
    ShowMessage(s);
  }
...

Saludos.

lmpadron 04-08-2011 13:39:12

Gracias amigos me funciono perfecto


La franja horaria es GMT +2. Ahora son las 22:47:38.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi