Resultados da pesquisa a pedido "language-lawyer"

1 a resposta

Modelo de expansão de pacote para alias

Parece que um argumento de pacote pode ser expandidosóno lugar de um parâmetro de pacote de um modelo de alias. Isso não é verdade para uma classe ou um modelo de função: template <class T, class... Args> struct x { using type = T; }; template ...

3 a resposta

É legal comparar indicadores pendentes?

É legal comparar indicadores pendentes? int *p, *q; { int a; p = &a; } { int b; q = &b; } std::cout << (p == q) << '\n'; Observe como ambosp eq aponte para objetos que já desapareceram. Isso é legal?

1 a resposta

`new Object` vs` Object` na especificação do ECMAScript

Então, eu estou olhando para a especificação ES5 na definição do quenew Object eObject Faz. Para minha surpresa: new Object descreve um algoritmo completo de como o construtor de objetos funciona - tratando o que acontece com diferentes tipos de ...

4 a resposta

Justificativa para comparações de ponteiros fora de uma matriz como UB

Portanto, o padrão (referindo-se aN1570 [http://www.open-std.org/jtc1/sc22/wg14/www/docs/n1570.pdf]) diz o seguinte sobre a comparação de ponteiros: C99 6.5.8 / 5 Operadores relacionais Quando dois ponteiros são comparados, o resultado depende ...

2 a resposta

O DOM sombra substitui :: antes e :: depois?

Escopo do CSS [http://www.w3.org/TR/css-scoping-1/#shadow-dom]diz Os descendentes de umhost sombra [http://www.w3.org/TR/css-scoping-1/#shadow-host]não deve gerar caixas na árvore de formatação. Em vez disso, o conteúdo doárvore de sombra ...

2 a resposta

É (ou será) o uso de sintaxe de modelo familiar em expressões lambda permitida?

O C ++ 14 introduziu lambdas genéricas. Ao folhear as propostas relacionadas, encontreiN3418 [http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2012/n3418.pdf]porFaisal Vali, Herb Sutter e Dave Abrahams. A seção 2.2 tem o título: 2.2 Permitir o ...

2 a resposta

Declaração de classe no mesmo escopo que o uso de compilações de declaração no GCC, mas não no MSVS

O programa a seguir está bem formado de acordo com o padrão c ++? namespace X { class A; } namespace Y { using X::A; class A {}; } int main() {} Estou obtendo resultados diferentes com diferentes compiladores: O gcc o compila sem erros.O visual ...

1 a resposta

Uma declaração de uso não pode ser repetida no escopo da função. Por que é que?

No [namespace.udecl] / 10, você tem o seguinte exemplo: namespace A { int i; } namespace A1 { using A::i; using A::i; // OK: double declaration } void f() { using A::i; using A::i; // error: double declaration } Esse trecho é compilado no clang.

2 a resposta

Programa com encadeamento de compilações de declarações de uso no MSVS e clang, mas não no GCC

O programa a seguir está bem formado ou mal formado de acordo com o padrão c ++? namespace X { int i; } namespace Y { using X::i; } int main() { using X::i; using Y::i; }Estou obtendo resultados diferentes com diferentes compiladores: MSVS: ...

1 a resposta

Como um tipo incompleto pode ser usado como um parâmetro de modelo para vetor aqui?

ATÉ que o seguinte programa seja legal e outros enfeites: #include <vector> struct Bar; struct Foo { using BarVec = std::vector<Bar>::size_type; }; struct Bar {}; int main() { Foo f; }Quão?Bar é um tipo incompleto, portanto o compilador não tem ...