Resultados da pesquisa a pedido "dynamic-cast"
Não é possível dynamic_cast void * para a classe modelada
O erro exato que estou recebendo é: Não é possível dynamic_cast 'object' (do tipo 'void *') para digitar 'class udDator (int) *' (a origem não é um ponteiro para uma classe) Isso está acontecendo dentro de uma exclusão de operador substituída. ...
Como escrever próprio dynamic_cast
Isso foi solicitado na entrevista. Como escrever próprio dynamic_cast. Eu acho que, com base na função de nome do typeid. Agora, como implementar o próprio typid? Eu não tenho idéia.
Que tipo de elenco deve ser passado de pai para filho?
Esta questão é sobre quaisElenco no estilo C ++ [https://msdn.microsoft.com/en-us/library/5f6c9f8h.aspx]deve ser usado para fazer essa conversão. Estou ciente de que um elenco de estilo C pode conseguir isso. Para o seguinteclass ...
Como o dynamic_cast é normalmente implementado?
O cheque de tipo é uma mera comparação de números inteiros? Ou faria sentido ter umGetTypeId função virtual para distinguir o que tornaria uma comparação inteira? (Só não quero que as coisas sejam uma comparação de string nos nomes ...
Verificação em tempo de execução de um elenco de um vazio *
Diga que eu tenho umvoid* contendo um ponteiro para um desconhecidoclass. Eu quero usardynamic_cast para verificar em tempo de execução o tipo de classe que realmente tenho. Por exemplo: class Foo {}; void* bar = new Foo;Se eu tentar ...
Testando uma classe c ++ para recursos
Eu tenho um conjunto de classes que descrevem um conjunto de caixas lógicas que podem conter e fazer coisas com elas. eu tenho struct IBox // all boxes do these { .... } struct IBoxCanDoX // the power to do X { void x(); } struct IBoxCanDoY // ...
Verificando se um cross-cast poderia funcionar?
Sei que é legal usardynamic_cast para fazer uma "conversão cruzada" em uma hierarquia de classes. Por exemplo, se eu tiver classes parecidas com esta: A B \ / CSe eu tiver umA* ponteiro que está apontando para um objeto do tipoC, então eu posso ...
elenco dinâmico lança ponteiro não é std :: __ non_rtti_object
Estou tendo problemas com o dynamic_cast. Eu apenas compilei meu projeto e testei tudo no modo de depuração e, em seguida, tentei compilá-lo no modo de liberação, copiei todas as configurações do parâmetro de otimização do modo de depuração que ...
C ++: Comparando ponteiros de classes base e derivad
Gostaria de obter algumas informações sobre práticas recomendadas ao comparar indicadores em casos como este: class Base { }; class Derived : public Base { }; Derived* d = new Derived; Base* b = dynamic_cast<Base*>(d); // When comparing the two ...
C ++: “… não é do tipo polimórfico” ao usar boost :: dynamic_pointer_cast
Por que recebo o seguinte erro para o seguinte código? 1>C:\Libs\boost_1_44\boost/smart_ptr/shared_ptr.hpp(259): error C2683: 'dynamic_cast' : 'my_namespace::A' is not a polymorphic type 1> D:\[location]\[header_filename].h(35) : see declaration ...