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
Você encontrou uma falha de segurança? )
Não seria melhor usar o polimorfismo?
Aproximadamente:
O problema é que as classes herdeiras CChartObjectRectLabel, CChartObjectButton e CChartObjectEdit têm seus próprios métodos exclusivos que precisam ser acessados. E a classe base CChartObject da biblioteca padrão não tem os mesmos métodos virtuais.
No meu exemplo acima...
acesso a métodos de classes herdeiras?
... O resultado é o seguinte:
Sim. Não é ortodoxo fazer o cast diretamente dessa forma. Nos pontos positivos, existe o dynamic_cast especificamente para essa finalidade; aqui, você não pode fazer a conversão de forma totalmente correta e essa é uma fonte potencial de erros implícitos e graves. E, falando sério, não é muito melhor do que ponteiros e referências inseguros.
Sim, antes de fazer uma pergunta aqui no fórum, descobri na Internet que o C++ tem o operador dynamic_cast (um mecanismo de identificação dinâmica de dados).
Agora estou dando uma olhada no link acima:
Então, essa é uma condição obrigatória? E se não houver métodos virtuais na classe base, então o dynamic_cast não funcionará?
P.S. >>> Aqui estou lendo mais sobre dynamic_cast (MSDN).
Droga, e você fala sobre segurança de linguagem depois disso?
Você provavelmente acha que pode converter livremente para qualquer coisa, como em C/C++.
Não é assim e não há nada de errado com a segurança.
Você provavelmente acha que pode converter livremente para qualquer coisa, como em C/C++.
Não é assim e não há nada de errado com a segurança.
Recebi esse erro por acidente, o que parece confirmar suas palavras. )
Não é e não há nada de errado com a segurança.
Não, é impossível verificar dynamic_cast em tempo de compilação.
O comentário acima mostra o resultado da verificação de casting no rantime.
Ela é muito rígida e funciona no mecanismo RTTI, pois sabemos exatamente quem é quem no caso de fantasmas.
O comentário acima mostra o resultado da verificação de transmissão no rantime.