Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > OOP
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

 
 
Herramientas Buscar en Tema Desplegado
  #5  
Antiguo 07-09-2020
Avatar de Al González
[Al González] Al González is offline
In .pas since 1991
 
Registrado: may 2003
Posts: 5.604
Poder: 30
Al González Es un diamante en brutoAl González Es un diamante en brutoAl González Es un diamante en brutoAl González Es un diamante en bruto
Cita:
Empezado por ElKurgan Ver Mensaje
A partir de la versión 2009 de Delphi, los antiguos String son ahora AnsiString, y los antiguos WideString son los actuales String. Lo mismo pasa con PChar y PAnsiChar. Todo ello con vistas a soportar Unicode
Me siento obligado a enmendar una pequeña parte de tu respuesta, ElKurgan. Qué gusto leerte nuevamente, por cierto.

WideString sigue siendo único en su diseño y comportamiento. Ciertamente es Unicode como el String actual, y el valor de ambos se representa como una matriz (array) unidimensional de WideChars. Pero tienen una diferencia importante:

Código Delphi [-]
String1 := String2;
hace que String1 apunte a la misma dirección de memoria que String2, sin copiar realmente ningún carácter. Solo se incrementa en 1 el contador de referencias de la cadena, un pequeño campo numérico interno que indica cuántas variables String están apuntando al mismo contenido. String (o UnicodeString) es un tipo de dato eficiente y ágil para tratar con cadenas de caracteres.

Mientras que
Código Delphi [-]
WideString1 := WideString2;
realmente crea una copia del valor de WideString2, de tal manera que resulta en dos cadenas con los mismos caracteres, y por lógica en un mayor consumo de memoria. A diferencia de String, WideString no usa un contador de referencias. Este tipo de dato es apropiado para usarlo con interfaces COM, donde las cadenas expuestas por la interfaz (en forma de propiedades) o recibidas por la misma (en forma de parámetros) no emplean un contador de referencias.
Responder Con Cita
 



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
Usar cadena en librería DLL para D7 y RX10 error en tipo de datos al pasar y recibir CrazySoft OOP 4 04-05-2019 20:55:47
pasar este codigo vb 6.0 a delphi7 DarkSton Varios 4 09-10-2018 09:17:35
Ayuda a pasar codigo delphi7 a XE3 elmago00 Varios 2 25-11-2014 18:27:05
pasar for (Entry in FSMBiosTablesList) do a delphi7 fcios Varios 2 01-05-2013 18:50:19
Pasar de Turbo Pascal 7 a DELPHI7 BEPAI Varios 6 14-03-2007 11:44:19


La franja horaria es GMT +2. Ahora son las 18:18:43.


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
Copyright 1996-2007 Club Delphi