Resultados da pesquisa a pedido "static-cast"

5 a resposta

Como implementar uma verificação em tempo de compilação de que um downcast é válido em um CRT

Eu tenho um CRPT antigo simples (por favor, não se distraia com restrições de acesso - a questão não é sobre eles): template<class Derived> class Base { void MethodToOverride() { // generic stuff here } void ProblematicMethod() ...

6 a resposta

C ++ Quando devemos preferir usar um static_cast de dois encadeados em vez de reinterpret_cast

Em primeiro lugar, este não é um duplicado dePor que nós reinterpret_cast em C ++ quando dois static_cast encadeados podem fazer seu ...

1 a resposta

Qual é a sobrecarga do tempo de execução static_cast se você adicionar uma constante mantendo o mesmo tipo?

Acho irritante poder chamar funções não constantes de um objeto se tiver um ponteiro para esse objeto. Não posso deixar que o ponteiro seja um ponteiro const, porque também há funções não-const que preciso chamar. Portanto, minha única opção ...

7 a resposta

Por que temos reinterpret_cast em C ++ quando dois static_cast encadeados podem fazer seu trabalho?

Diga que eu quero transmitirA* parachar* e vice-versa, temos duas opções (quero dizer, muitos de nós pensam que temos duas opções,Porque ambos parecem funcionar! Daí a confusão!): struct A { int age; char name[128]; }; A a; char *buffer ...

3 a resposta

Por que não posso static_cast entre char * e unsigned char *?

Aparentemente, o compilador considera-os como tipos não relacionados e, portanto,

2 a resposta

reinterpret_cast para quase dados de pod (a compatibilidade de layout é suficiente)

Estou tentando aprender sobrestatic_cast ereinterpret_cast. Se eu estiver correto, o padrão (9.2.18) diz quereinterpret_cast para dados do pod é seguro: Um ponteiro para um objeto POD-struct, convertido adequadamente usando umreinterpret_cast, ...

2 a resposta

O que o static_cast <T> faz com um T &?

Então eu pergunteiessa questão [https://stackoverflow.com/q/37967446/2642059]e eu estava tentando resolver isso viastatic_cast. (Aliás, resolve o problema, só não tenho certeza se entendi o porquê.) No código: vector<int> foo = {0, 42, 0, 42, ...

4 a resposta

static_cast with boost :: shared_ptr?

Qual é o equivalente a umstatic_cast comboost::shared_ptr? Em outras palavras, como preciso reescrever o seguinte Base* b = new Derived(); Derived* d = static_cast<Derived*>(b);quando usarshared_ptr? boost::shared_ptr<Base> b(new Derived()); ...

3 a resposta

Union vs. static_cast (void *)

Estou escrevendo código e até agora estava usando estruturas como esta: struct s{ enum Types { zero = 0, one, two }; unsigned int type; void* data; }Eu precisava de uma estrutura genérica para armazenar dados de diferentes classes e eu queria ...

2 a resposta

C ++ diferença entre adicionar constância com static_cast e const_cast do objeto “this”?

Conforme Scott Meyers, para evitar a repetição de código na versão const de um getter e a versão não-const de um getter, chame a versão const do método a par...