Você está perdendo oportunidades de negociação:
- Aplicativos de negociação gratuitos
- 8 000+ sinais para cópia
- Notícias econômicas para análise dos mercados financeiros
Registro
Login
Você concorda com a política do site e com os termos de uso
Se você não tem uma conta, por favor registre-se
também está sob a custódia dos moderadores
Quem disse alguma coisa sobre custódia... mas um personagem com duas excentricidades...
também sob a tutela dos moderadores
Pareço ter apagado meu próprio posto.
Este era o caso quando um objeto é criado em uma função através de uma nova função. Originalmente, falávamos em passar um ponteiro para um objeto existente. E aqui, pode ser passado desta maneira:
nulo f(CObj * obj){}
E se um ponteiro precisa ser passado para uma função para criar um objeto na função, é assim que ela funciona:
Isso é tudo o que você queria saber sobre o OOP, mas estava com medo de perguntar))))Este código me dá o pontapé de saída para o terminal. Na melhor das hipóteses, ele causa um erro crítico na depuração (para animação clique na imagem):
Estranho que tal construção seja ignorada pelo compilador.
Dmitry deu o primeiro exemplo com um erro, e o que há de errado com isso?
Dim, sim, ele compila sem erros, mas quando você executa o script, um erro aparece.
Vladimir corrigiu-o e acrescentou um ponteiro, o código funcionou corretamente.
O que mais precisamos? Agora temos que descobrir quem é o mais legal? ))))
Rapazes, sejam respeitosos uns com os outros e não recorram a personalidades e insultos com arrogância.
Exemplo inicial de Dimitri
Correção por Vladimir.
Minha correção com uma impressão do resultado do método, para verificar
Este exemplo agora está funcionando, o que mais você precisa?
Pare de tentar descobrir quem é mais frio ou não, todo mundo tem erros de digitação e erros.
No decorrer destes argumentos, acho que identificamos um erro de compilação.
Por que o compilador pula a compilação do exemplo inicial de Dmitri sem erros?
Este código me dá o pontapé de saída para o terminal. Na melhor das hipóteses, causa um erro crítico de depuração:
É estranho que uma tal construção seja passada pelo compilador.
Tudo é válido para o compilador aqui.
Um ponteiro para um objeto no segmento de dados do programa é criado e é 0x0 iniciado durante a compilação.
Os comandos necessários para o processador são criados no segmento de código.
Em tempo de execução, os comandos são levantados na pilha no endereço da função z(...).
E lá move rdx [0x0]
E o acesso a um endereço de memória nulo é proibido. O desreferenciamento de um ponteiro nulo é chamado
Tudo é válido para o compilador aqui.
Para qual compilador?
Este código me dá o pontapé de saída para o terminal. Na melhor das hipóteses, ele causa um erro crítico na depuração (para animação clique na imagem):
Estranho que tal construção seja ignorada pelo compilador.
A mina compila, funciona corretamente, mas mostra uma mensagem de vazamento de memória (apagar não funciona) após a conclusão.
Você vai lhe ensinar o que é ruim agora, é o que é bom que precisa ser tratado ))))
Você não se sentou com os códigos do fxsaber por nada. Parece-me uma obra-prima.
Desculpas pela desinformação, escrevi anteriormente que não se pode chamar o método Create() em uma classe infantil.
Agora, duplamente verificado, você pode. Mas o acesso ao membro privado m_button não estava disponível. Ou seja, era impossível verificar, por exemplo, o estado do botão: pressionado/liberado.
Agora, com a dica de Igor, é possível.