Resultados da pesquisa a pedido "language-lawyer"

3 a resposta

O volátil evita leituras ou gravações introduzidas?

Em C #,volatile palavra-chave @ garante que as leituras e gravações adquiram e liberem semântica, respectivamente. No entanto, ele diz algo sobre leituras ou gravações introduzidas? Por exemplo volatile Thing something; volatile int aNumber; ...

2 a resposta

inda precisamos escrever colchetes angulares vazios ao usar objetos de função std transparente

Com dedução de argumento de modelo de classe, podemos escrever: std::less Fn;No entanto, o G ++ 8.2 rejeita este código: #include <algorithm> #include <vector> #include <functional> int main() { std::vector v= { 1, 3, 2, 7, 5, 4 ...

1 a resposta

Por que modelo com apenas um pacote variadico vazio válido mal formado?

Qual é a lógica de temp.res # 8.3 [https://timsong-cpp.github.io/cppwp/temp.res#8.3] (8) A validade de um modelo pode ser verificada antes de qualquer instanciação. [Observação: saber quais nomes são nomes de tipos permite que a sintaxe de ...

1 a resposta

Isso é um inseto? O construtor Constexpr se torna silenciosamente não constexpr

Veja este código: struct NonConstexpr { NonConstexpr() { } }; template <typename T> struct Bar { NonConstexpr nonConstexpr; constexpr Bar() { } }; struct Foo { Bar<void> bar; constexpr Foo() { } };Foo tem um membro,Foo::bar::nonConstexpr, que ...

1 a resposta

s variáveis `const 'e` constexpr` nos cabeçalhos devem estar `inline` para evitar violações de ODR?

Considere o seguinte cabeçalho e assuma que ele seja usado em várias TUs: static int x = 0; struct A { A() { ++x; printf("%d\n", x); } };Comoessa questã [https://stackoverflow.com/questions/4276794/static-keyword-in-h-file-and-internal-linkage] ...

3 a resposta

unção @constexpr com argumento de referência não utilizado - gcc vs clang

Considere o seguinte código: template <int N, typename T> void f(T) { } template <typename T> constexpr int k(T&) { return 0; } int main() { constexpr auto i = 1; f<k(i)>([&i] { f<k(i)>(0); }); }clang++ (tronco compila.g++ (tronco falha com o ...

3 a resposta

Qual é o comportamento de uma variável não inicializada usada como seu próprio inicializado

Notei agora que o código a seguir pode ser compilado com clang / gcc / clang ++ / g ++, usandoc99, c11, c++11 padrões int main(void) { int i = i; }e mesmo com-Wall -Wextra, nenhum dos compiladores relata aviso Modificando o código paraint i = ...

3 a resposta

equisitos para tipos de ponteiros de alocador de biblioteca padr

Estou tentando escrever uma classe de matriz esparsa quadtree. Em suma, umquadtree_matrix<T> é a matriz zero ou um quádruplo(ne, nw, se, sw) doquadtree_matrix<T>. Eu gostaria, eventualmente, de testar diferentes esquemas de alocação, já ...

1 a resposta

Que membro do sindicato se torna ativo após a colocação de novos

Em relação a este código: #include <string> int main() { union u { u() { i = 0; } ~u() {} int i; std::string s1; std::string s2; } u; new (&u) std::string{}; } [intro.object] / 2 [https://timsong-cpp.github.io/cppwp/n4659/intro.object#2] diz ...

0 a resposta

ualificações CV de pré-valores (revisitado

Este é um acompanhamento do meuprevious question [https://stackoverflow.com/questions/42989034/cv-qualifications-of-prvalues-in-c14] , onde o consenso aparente foi que a mudança no tratamento das qualificações de CV de pré-valores era apenas uma ...