Resultados da pesquisa a pedido "language-lawyer"

3 a resposta

O reinterpret_cast (ou qualquer conversão) converte xvalues em lvalues?

O código a seguir é legal (pelos padrões C ++ 11 e / ou C ++ 14)? #include <iostream> #include <utility> using namespace std; void foo(int &a) { cout << a << endl; } int main() { foo(reinterpret_cast<int &>(move(5))); } Se sim, é um ...

2 a resposta

Como é o layout de memória de uma classe versus uma estrutura

Eu venho da programação C, onde os dados em uma estrutura são dispostos com a variável top primeiro, depois a segunda, terceira e assim por diante .. Agora estou programando em C ++ e, em vez disso, estou usando uma classe. Basicamente, quero ...

1 a resposta

A inicialização de valor funciona para objetos atômicos?

Portrabalhos aqui, entendo isso comostd::atomic<T> a{} efetivamente zero inicializaa. Eu sempre pensei assim e praticamente o uso ...

2 a resposta

Sum +++ é um comportamento indefinido em C? [duplicado]

Esta pergunta já tem uma resposta aqui: Por que um +++++ b não funciona? [/questions/5341202/why-doesnt-ab-work] 8 respostasTestei isso em máquinas diferentes e em compiladores diferentes, mas dei a mesma saída: int sum = 10, i = 5; ...

1 a resposta

Por que tenho permissão para declarar um objeto com um destruidor excluído?

Considere o seguinte texto: [C++11: 12.4/11]: Destrutores são chamados implicitamente para objetos construídos com duração de armazenamento estático (3.7.1) na finalização do programa (3.6.3),para objetos construídos com duração ...

2 a resposta

Palavra-chave "inline" vs conceito "inlining"

Estou fazendo esta pergunta básica para corrigir os registros. Se referiramessa questão [https://stackoverflow.com/questions/1932311/when-to-use-inline-function-and-when-not-to-use-it] esua resposta atualmente aceita ...

2 a resposta

Isso realmente quebra as regras de alias estrito?

Ao compilar esse código de exemplo usando g ++, recebo este aviso: aviso: desmarcando o ponteiro puncionado por tipo violará regras de alias estrito[-Wstrict-aliasing] O código: #include <iostream> int main() { alignas(int) char ...

1 a resposta

É bem definido converter xvalues em lvalues para passar para funções?

Recentemente eu descobri [https://stackoverflow.com/q/26793072/1000282]que às vezes é capaz de transformar valorestemporariamente em lvalues pode ser útil para mim. Eu tenho usado a seguinte ferramenta: #include <type_traits> template <typename ...

2 a resposta

Sintaxe alternativa para loop [duplicado]

Esta pergunta já tem uma resposta aqui: Existe uma maneira de criar um loop for com apenas duas expressões em C? [/questions/23168997/is-there-a-way-to-create-a-for-loop-with-only-two-expressions-in-c] 1 respostaAbaixo está um trecho do padrão ...

1 a resposta

Por que `std :: initializer_list` não é definido como um tipo literal?

Este é um acompanhamento desta pergunta:É legal declarar um objeto constexpr initializer_list? [https://stackoverflow.com/questions/16063123/is-it-legal-to-declare-a-constexpr-initializer-list-object] . Desde o C ++ 14, ostd::initializer_list ...