GARANTIR DESCONTO

Fórum Contador de instancias #198045

30/11/2003

0

Como eu faço pra ter uma propriedade em um objeto que seja o mesmo em todas as instancias ? tipo, um contador de instancias ?
Outra duvida, se eu tenho duas units com um objeto ou type com nomes iguais como eu defino de qual dos dois eu vou usar ?
Obrigado
Emilio


Emilio.cini

Emilio.cini

Responder

Posts

30/11/2003

Raserafim

quanto a sua última pergunta:

se você declarar apenas uma das units, o objeto que será executado será a da unit declarada. Mas se você declarar as duas units, então a que vai ser executada é a da última unit declarada.


Responder

Gostei + 0

30/11/2003

Beppe

Como eu faço pra ter uma propriedade em um objeto que seja o mesmo em todas as instancias ? tipo, um contador de instancias ?


Crie uma variável global, na parte de implementation.
Então escreva uma função para o read da propriedade, que devolve esta global. Para o seu contador de instâncias, você incrementa-a no Create e decrementa no Destroy.

...
function GetInstaceCount: Integer;
...
property InstanceCount: Integer read GetInstanceCount;
...
var
InternalInstances: Integer;
...
function ...GetInstaceCount: Integer;
begin
Result := InternalInstances;
end;

Outra duvida, se eu tenho duas units com um objeto ou type com nomes iguais como eu defino de qual dos dois eu vou usar ? Obrigado Emilio

Quando você necessita diferenciar entre objetos de duas units, você usa qualificação. Po exemplo, tem TBITMAP em Windows e em Graphics, então para acessar a do Windows, usa-se Windows.TBITMAP.


Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar