Jump to content

Delphi Enterprise 
pela METADE DO PREÇO

botao_delphi.png

Curso Dominando o ACBrMonitor
Novo Módulo Soluções de Varejo
Assine o SAC ACBr em qualquer plano e tenha acesso

Saiba Mais

Balança SM100 performance surpreendente

Tecnologia Japonesa   Teclado e Visor resistentes a água
Consumo inteligente de etiquetas   Baixo custo de manutenção
Comunicação Ethernet e WIFI independentes

Saiba Mais

Impressora de Etiquetas ELGIN - L42 PRO

Protocolos PPLA, PPLB, ZPL, EPL (automático)
Porta USB padrão Opcionais: Ethernet, Serial, Paralela
Sensor de Etiquetas Móvel Garantia de 18 meses

Saiba mais

Alisson Souza Pereira

Correção de Warning EACBrDFeException.CreateDef

Recommended Posts

Bom dia
Existe um warning na compilação do ACBr

[dcc32 Warning] W1029 Duplicate constructor 'EACBrDFeException.CreateDef' with identical parameters will be inacessible from C++

Uma solução é utilizar o padrão da embarcadero para evitar o warning. 

Sugestão é criar mais um parâmetro "Dummy" para diferenciar um construtor do outro. 

Ex: Classe TCustomForm
 

image.png.6b52276d208fe054b06f02ce6a5edf46.png

 

ACBrDFeException.pas

  • Like 1

Share this post


Link to post
Share on other sites

Bom dia Alisson,

Muito obrigado pela sua colaboração, assim que possível vamos analisar e estando tudo OK enviaremos para o repositório.

  • Like 1

Consultor SAC ACBr Italo Jurisato Junior
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr

Analista de Sistemas / e-mail: [email protected] / Fone: (16) 9-9701-5030 / Araraquara-SP

Share this post


Link to post
Share on other sites

O que o Warning está dizendo, é que estamos criando um método com mesmo número e tipo de parâmetros de um método já existente, porém com um nome diferente, e por isso o compilador em C++ irá ignorá-lo, correto ?

A meu ver o Warning não faz sentido... o fato do método ter a mesma entrada de parâmetros, não significa que ele irá fazer a mesma coisa que o outro método...  O nome diferente, já dá a entender isso...

Sua sugestão seria fazermos um Override de um método Virtual, e com isso "sossegar" o Warning...

No Delphi Rio 10.3.3, não existe o CreateNew...


Consultor SAC ACBr

Daniel Simões de Almeida
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.

Share this post


Link to post
Share on other sites

@Daniel Simoes 
Estou utilizando Delphi 10.3
É exatamente isso,  não é um problema de compilação é apenas um warning que podemos contornar para para não ficar acusando sem necessidade. 
A embacadero possui várias classes nessa mesma situação de dois construtores e utiliza a solução de criar um parâmetro Dummy. 
A minha sugestão é adotar o mesmo padrão para  evitar um alerta de compilação desnecessário. 

Inclusive já vi no fórum que membros ficam com dúvidas em relação a esse warning e acabam postando dúvidas etc... 


image.png.ed2c6ea73a0bc5bfc335190369135cc5.png
Adicionar isso já resolve

Não é necessário fazer um Override de um método Virtual é apenas adicionar o parâmetro 

Edited by Alisson Souza Pereira
Incompleto.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×
×
  • Create New...