Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Otros entornos y lenguajes > C++ Builder
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

 
 
Herramientas Buscar en Tema Desplegado
  #2  
Antiguo 14-11-2013
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 38
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola darkmir.

En el primer código:
Código:
void mostrar(TStrings *P)
{
    P->Add("Hola Mundo");
}

void __fastcall TForm1::Button1Click(TObject *Sender)
{
   mostrar(Edit1->Text);
}
El parámetro P está declarado de tipo TStrings y le envias un argumento de tipo AnsiString, de allí el error. No sucede lo mismo si envias un argumento del tipo correcto, por ejemplo:

Código:
void __fastcall TForm1::Button1Click(TObject *Sender)
{
 mostrar(ListBox1->Items); // o Memo1->Lines, ...
}
En el segundo código:
Código:
void mostrar(AnsiString prueba )
{
    prueba ="Hola Mundo";
}

void __fastcall TForm1::Button1Click(TObject *Sender)
{
   mostrar(Edit1->Text);
}
Tenes declarar el parámetro por referencia, ya que lo está por valor y así no se alterará el valor de la varíable enviada como argumento:
Código:
void mostrar(AnsiString &prueba )
{
  prueba = "Hola Mundo";
}
De todos modos no va a funcionar de forma directa con Edit->Text, ya que Text no es la variable en sí sino una propiedad que la referencia, así que tendrías que usarla de este modo:
Código:
void __fastcall TForm1::Button1Click(TObject *Sender)
{
  AnsiString s;
  mostrar(s);
  Edit1->Text = s;
}
Si deseas ahorrarte la variable AnsiString (s), una opción es:
Código:
void mostrar(TEdit *ED )
{
  ED->Text = "Hola Mundo";
}

void __fastcall TForm1::Button1Click(TObject *Sender)
{
  mostrar(Edit1);
}
Saludos
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Responder Con Cita
 


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
funcion split de una cadena look OOP 4 10-10-2011 23:14:56
Llamar funcion dll con una cadena... robinsongm Varios 6 26-02-2010 20:55:21
Funcion para borrar la cadena que aparesca repetida dentro de otra cadena flystar Varios 1 02-07-2007 23:51:10
Funcion para buscar cadena dentro de otra cadena y el numero de veces flystar Varios 3 02-07-2007 22:48:08
Funcion de Que Retorna una Cadena Abel Garcia Firebird e Interbase 4 23-07-2005 10:30:02


La franja horaria es GMT +2. Ahora son las 12:15:28.


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