Resultados da pesquisa a pedido "one-definition-rule"

1 a resposta

Como evitar violar ODR com classes de características

Ao ler o código on-line das bibliotecas de produção, encontrei algo parecido com isto Traits.hpp template <typename Type> class Traits { template <typename T, detail::EnableIfIsInstantiation<T, Type>* = nullptr> static void foo(T& object) { ...

1 a resposta

Como executar o ranlib em um arquivo criado pelo Android.mk?

Isso surgiu em algumas bibliotecas com as quais trabalho regularmente. Veja, por exemplo: Tabela de símbolos de arquivamento SSL de erro (execute ranlib) [https://stackoverflow.com/q/36324125]nenhuma tabela de símbolos de arquivamento (execute ...

1 a resposta

GoogleTest PrintPara não ser chamado para uma aula

Estou com um problema bastante estranho ao informar ao googletest para imprimir uma determinada classe da maneira que desejo usar PrintTo. A classe é um ponto 2D muito simples, está em um espaço para nome e a função PrintTo está no mesmo espaço ...

1 a resposta

palavra-chave estática no arquivo he ligação interna

Ainda outrastatic Pergunta, questão. Eu li o seguinte: O que são variáveis estáticas? [https://stackoverflow.com/questions/1995495/what-are-static-variables]escopo de arquivo e flutuadores ...

1 a resposta

A variável estática constexpr odr é usada?

Dando código abaixo, éFoo::FOO1 ODR usado ou não? #include <iostream> #include <map> #include <string> class Foo { public: static constexpr auto FOO1 = "foo1"; void bar(); }; void Foo::bar() { const std::map<std::string, int> m = { {FOO1, 1}, }; ...

1 a resposta

Quando uma variável odr é usada no C ++ 14?

O rascunho do C ++ 14 (N3936) declara em §3.2 / 3: Uma variável x cujo nome aparece como uma expressão potencialmente avaliada ex é usada como odr, a menos que a aplicação da conversão lvalue em rvalue (4.1) em x produz uma expressão constante ...

2 a resposta

Existe uma maneira de detectar violações do ODR de função em linha?

Então, eu tenho esse código em 2 unidades de tradução separadas: // a.cpp #include <stdio.h> inline int func() { return 5; } int proxy(); int main() { printf("%d", func() + proxy()); } // b.cpp inline int func() { return 6; } int proxy() { ...

2 a resposta

O que posso fazer com um membro de dados inicializado static, constexpr e in-class?

Esta é provavelmente uma questão pouco comum, na medida em que pede uma explicação mais completa de uma resposta curta dada aoutra pergunta e de alguns aspec...

2 a resposta

O que significa “usar ODR” alguma coisa?

1 a resposta

usando constantes no arquivo de cabeçalho com conformidade com ODR

Olhando paraoutra pergunta [https://stackoverflow.com/questions/7955058/anonymous-namespaces-and-the-one-definition-rule] Percebi que não posso usar objetos ou funções de um espaço para nome anônimo por meio de um arquivo de cabeçalho, pois isso ...