Resultados da pesquisa a pedido "language-lawyer"

2 a resposta

valor do ponteiro static_cast'd

No esboço atual padrão (e C ++ 17),esta [http://eel.is/c++draft/expr.static.cast#13]está escrito sobre static_casting umvoid *: Um pré-valor do tipo "ponteiro paracv1 void ”pode ser convertido em um pré-valor do tipo“ ponteiro paracv2 T ”, onde ...

5 a resposta

Função C ++ retornando função

Onde no padrão as funções que retornam funções não são permitidas? Eu entendo que eles são conceitualmente ridículos, mas me parece que a gramática os permitiria. De acordo com esta página da web, um "noptr-declarator [é] qualquer declarador ...

2 a resposta

Qual foi a justificativa para tornar opcional `return 0` no final de` main`?

Começando com o padrão C99, o compilador é necessário para gerar o equivalente a umreturn 0 oureturn EXIT_SUCCESS se nãoRetorna é fornecido no final demain. Houve também uma alteração correspondente e idêntica ao padrão da linguagem C ++ na mesma ...

3 a resposta

int a = 1, é um || 1 uma expressão constante?

N4527 5,20 [expr.const] p5 Uma expressão constante é uma expressão constante do núcleo glvalue cujo valor se refere a uma entidade que é um resultado permitido de uma expressão constante (conforme definido abaixo) ou uma expressão constante do ...

3 a resposta

pedido de especialização parcial com contexto não deduzido

De acordo com [temp.class.order] §14.5.5.2, a seleção de uma especialização parcial det neste exemplo: template< typename > struct s { typedef void v, w; }; template< typename, typename = void > struct t {}; template< typename c > struct t< c, ...

1 a resposta

Uma expressão constante integral de glvalue é uma expressão constante?

N4527 5,20 [expr.const] p3 Aexpressão constante integralé uma expressão do tipo de enumeração integral ou sem escopo, implicitamente convertida em um pré-valor, em que a expressão convertida é uma expressão constante do núcleo. 5.20 ...

3 a resposta

É legal reutilizar a memória de uma matriz de tipos fundamental para uma matriz de tipos diferente (mas ainda fundamental)

Este é um acompanhamento para este outroPergunta, questão [https://stackoverflow.com/q/51930334/3545273]sobre a reutilização de memória. Como a pergunta original era sobre uma implementação específica, a resposta estava relacionada a essa ...

5 a resposta

O compilador pode otimizar as alocações de memória de heap?

Considere o seguinte código simples que utilizanew (Estou ciente de que não hádelete[], mas não se refere a esta pergunta): int main() { int* mem = new int[100]; return 0; }É permitido ao compilador otimizar onew ligar? Na minha pesquisa,g ++ ...

1 a resposta

O argumento de modelo do modelo causa erro do compilador em Clang, mas não no GCC [duplicado]

Esta pergunta já tem uma resposta aqui: Parâmetro do modelo e valores padrão [duplicado] [/questions/48645226/template-template-parameter-and-default-values] 1 resposta Enquanto ajuda com o problema observado emmuitos parâmetros de modelo ...

3 a resposta

Por que a conversão implícita de bool em string não é um erro?

Eu engasguei-o e tentei encontrar uma pergunta semelhante no SO também, mas não encontrei nada útil. Então, postando minha pergunta aqui. Considere este programa: #include <iostream> void foo(const std::string &) {} int main() { foo(false); ...