Josir Gomes wrote:
> É verdade João - eu tinha me esquecido de mencionar o initialization e
> o finalization. Se a unit referenciada, tiver alguma destas seções,
> ela será compilada também !!

Somente aquilo que for pertinente, não a unit toda. O compilador usa o 
que se chama de smartlink, juntando ao código apenas o que é útil ou o 
que possa vir a ser alcançado através de rtti.

--
Joao Morais



> Um abraço,
> Josir.
> --- Em delphi-br@yahoogrupos.com.br, Joao Morais <[EMAIL PROTECTED]> escreveu
>> Walter Chagas Junior (BOL) wrote:
>>> Até aonde sei (O pessoal da CG pode confirmar isto),
>> Eu não sou da CG mas vou confirmar, ok?
>>
>>> aquelas units 
>>> declaradas, que ficam lá na clausulá uses, servem apenas para
> informar ao 
>>> compilador aonde estão as rotinas que estão na unit que está sendo 
>>> compilada. Ele não pega todo aquele conteúdo lá e embute no
> executável não. 
>>> Se fosse assim, imaginem o tamanho que ficaria um Exe final de um
> programa 
>>> feito no Delphi.
>>>
>>> Ele pega apenas as rotinas que o código que está sendo compilado
> precisa. Se 
>>> não tiver nada que interesse lá naquela unit declarada, ele ignora
> a mesma. 
>>> Então deixar lá ou não, não faz diferença alguma.
>> O compilador faz smart link, certo, mas a declaração da unit vai fazer 
>> diferença se a tal unit tiver algum código na área initialization ou 
>> finalization. É aí aonde mora o problema principal.
>>
>> Outro problema diz respeito a uso de memória. Quanto mais units
> houverem 
>> na cláusula uses, maior o consumo de memória durante a compilação.
>>
>>> Mas vamos ver o que o pessoal da CG nos diz.
>> --
>> Joao Morais
>>
> 
> 
> 
> ------------------------------------
> 

Responder a