![]() |
![]() |
| Paypal | FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
|||||||
| Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
|
Herramientas | Buscar en Tema | Desplegado |
|
#21
|
||||
|
||||
|
Hola.
Con el fin de entender esto, me puse a investigar un poco. Y de lo conocido, mas lo que pude ampliar leyendo, una variable de tipo AnsiString contiene un apuntador que almacena un valor nulo si está vacía o de modo contrario apunta a la dirección del comienzo de una cadena finalizada en nulo al estilo de las cadenas C. Pero no termina allí, el formato en que se almacena este tipo es: Código:
[contador de referencias] [longitud de cadena] [cadena + nulo] El contador de referencias se incrementa cada vez que una cadena es asignada a una variable y se decrementa cuando deja de hacerlo. De este modo cuando el contador llega a cero la memoria previamente reservada es liberada de forma automática; del mismo modo es liberada cuando sale de su ámbito (al estilo de C++). Las variables de este tipo también se inicializan como cadenas vacías de forma automática. Por último cuando se concatena carácter a carácter, es posible que se libere y reasigne memoria en cada asignación. De lo que resulta, por ejemplo, que es mas eficiente hacer: que:
Haciendo unas pruebas pude pude lograr que se produzca error que buscaba: y como se puede ver, sucede cuando el argumento no fue previamente inicializado. Por último, la función del mensaje #9, resistió todas mis pruebas sin generar ningún error. En definitiva, no encontré la alusión concreta que buscaba, pero sé un poco mas al respecto .Saludos ![]()
__________________
Daniel Didriksen Guía de estilo - Uso de las etiquetas - La otra guía de estilo .... Última edición por ecfisa fecha: 15-10-2015 a las 20:03:29. |
|
|
Temas Similares
|
||||
| Tema | Autor | Foro | Respuestas | Último mensaje |
| Cómo quitar espacios inicial y final en cadena | bulc | Varios | 0 | 22-03-2014 18:24:33 |
| Quitar Espacios en Sql | El_Perrito | Firebird e Interbase | 3 | 25-02-2005 12:49:12 |
| Quitar espacios al final de una cadena | gescoto99 | SQL | 1 | 04-08-2004 00:02:43 |
| Quitar espacios de campos CHAR | cartmanrules | Firebird e Interbase | 3 | 22-07-2004 10:53:06 |
| Quitar espacios en blanco | Javier_A | OOP | 3 | 09-06-2004 10:29:27 |
|