Resultados da pesquisa a pedido "reinterpret-cast"

3 a resposta

Problema ao lançar o complexo STL <double> para fftw_complex

O manual da FFTWdiz [http://www.fftw.org/doc/Complex-numbers.html#Complex-numbers]É isso aífftw_complex tipo é pouco compatível comstd::complex<double> classe em STL. Mas isso não funciona para mim: #include <complex> #include <fftw3.h> int ...

1 a resposta

Transmissão adequada para funções de membro de leitura e gravação fstream

Embora tenha havido muitas linhas escritas sobre o tópico reinterpret_cast, e quão ruim é, ainda estou intrigado com a melhor maneira de evitá-lo, especialmente ao lidar com funções como leitura e gravação do fstream. Então, aqui está o meu ...

3 a resposta

reinterpret_cast

NoC ++ sem medo: um guia para iniciantes que faz você se sentir inteligente livro, e no capítulo (8), menciona o seguinte sobrereinterpret_cast .... converte de um tipo de ponteiro (int) para outro (caractere *). Como a conversão altera a ...

2 a resposta

Existe uma diferença (semântica) entre o valor de retorno do posicionamento novo e o valor convertido de seu operando?

Existe uma diferença (semântica) entre o valor de retorno do posicionamento novo e o valor convertido de seu operando? struct Foo { ... }; char buffer[...]; Foo *a = new(buffer) Foo; Foo *b = reinterpret_cast<Foo *>(buffer);Faza eb diferem de ...

2 a resposta

É um comportamento indefinido `reinterpret_cast` a` T * `a` T (*) [N] `?

Considere o seguinte cenário: std::array<int, 8> a; auto p = reinterpret_cast<int(*)[8]>(a.data()); (*p)[0] = 42;É istocomportamento indefinido? Eu acho que é. a.data() retorna umint*, que não é o mesmo queint(*)[8] oregras de alias de ...

2 a resposta

É uma violação estrita de aliasing alias a struct como seu primeiro membro?

Código de amostra: struct S { int x; }; int func() { S s{2}; return (int &)s; // Equivalent to *reinterpret_cast<int *>(&s) }Eu acredito que isso é comum e considerado aceitável. O padrão garante que não haja preenchimento inicial na estrutura. ...

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, ...

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 ...

10 a resposta

Por que este reinterpret_cast não é compilado?

Eu entendi aquiloreinterpret_cast é perigoso, só estou fazendo isso para testá-lo. Eu tenho o seguinte código: int x = 0; double y = reinterpret_cast<double>(x);Quando tento compilar o programa, ocorre um erro dizendo conversão inválida do tipo ...

2 a resposta

Como contornar a limitação de reinterpretação de conversão com constexpr

Em c ++ 11, umconstexpr A expressão não pode conter reinterpretações de conversão. Por exemplo, se alguém quiser manipular os bits em um número de ponto flutuante, diga para encontrar a mantissa do número: constexpr unsigned int mantissa(float ...