2011-12-14 11 views
7

Encontré esta directiva declarada en Controls.pas (y también en otras unidades) y estaré encantado de saber qué significa.

{$C PRELOAD} 

Por lo que sé $ C significa aserciones de control, pero ¿cuál es la palabra clave PRELOAD? ¿Es algo como "afirmarme en el momento de la precarga"?

He encontrado esto en Delphi 2009

Gracias

Respuesta

7

La directiva $C se llama Code segment attribute y en conjunción con las palabras clave móviles, fijas, Demandload, precarga,, changues PERMANENTES DISCARDABLE los atributos de un segmento de código .

{$C MOVEABLE DEMANDLOAD DISCARDABLE} // this is setting Code Segment Attribute. 

si utiliza la directiva $C con un + o - está utilizando activar o desactivar la generación de código para afirmaciones.

ejemplo:

{$C+} { Assertions - On } 
6

{$C+} y {$C-} son para afirmaciones. {$C PRELOAD} es un remanente de la programación de 16 bits, donde precargó el segmento de código de la unidad en la memoria inmediatamente en tiempo de ejecución en lugar de esperar a que se acceda primero al segmento. Eso se volvió innecesario en Delphi 2 cuando apareció la programación de 32 bits, por lo que no sé por qué la fuente de VCL aún la está usando.

Cuestiones relacionadas