Resultados da pesquisa a pedido "constexpr"

1 a resposta

Tentando passar um lambda constexpr e usá-lo para especificar explicitamente o tipo de retorno

Gostaria de usar uma função e passar umconstexpr lambda. No entanto, ele só compila com sucesso se eu permitir que o tipo seja deduzido porauto. Fornecendo explicitamente o tipo através de-> std::array<event, l()> parece falhar (a primeira ...

2 a resposta

O loop estático aninhado falha ao funcionar devido a constexpr não capturável

Eu tenho istostatic_loop construção usada para o tipo de despacho sobre o desenrolar do loo template <std::size_t n, typename F> void static_loop(F&& f) { static_assert(n <= 8 && "static loop size should <= 8"); if constexpr (n >= ...

2 a resposta

Argumento inválido especificado explicitamente para o parâmetro de modelo que é constexpr

Eu tenho umstatic_loop construa assim template <std::size_t n, typename F> void static_loop(F&& f) { static_assert(n <= 8 && "static loop size should <= 8"); if constexpr (n >= 8) f(std::integral_constant<size_t, n - 8>()); if constexpr (n >= ...

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 ...

1 a resposta

Intrínsecas Constexpr e SSE

A maioria dos compiladores C ++ oferece suporte a instruções SIMD (SSE / AVX) com recursos como _mm_cmpeq_epi32Meu problema com isso é que essa função não está marcada comoconstexpr, embora "semanticamente" não haja motivo para essa função ...

1 a resposta

MSVC 2017 violando ordem de inicialização estática na unidade de tradução única

Comunidade MSVC 2017 com-std=c++17 engasga com o seguinte exemplo: #include <iostream> struct TC { static TC const values[]; static TC const& A; static TC const& B; static TC const& C; int const _value; }; inline constexpr TC const TC::values[]{ ...

1 a resposta

A ordem de inicialização das variáveis de modelo constexpr (isto é, inicializadas constantemente) é garantida?

Dept.cppreference.com/w/cpp/language/initialization [http://en.cppreference.com/w/cpp/language/initialization]: Inicialização dinâmica não ordenada, que[sic] aplica-se apenas a membros de dados estáticos do modelo de classe (estático / ...

1 a resposta

Acesso à variável constexpr dentro da expressão lambda sem capturar

No exemplo a seguir, eu posso acessar oconstexpr variávelx de dentro do lambday sem capturá-lo explicitamente. Isso não é possível sex não é declarado comoconstexpr. Existem regras especiais que se aplicam aconstexpr para capturar? int foo(auto ...

1 a resposta

Variável `constexpr`“ usada em seu próprio inicializador ”: Clang vs. GCC

Esta pergunta parece relacionada aum existente [https://stackoverflow.com/questions/43745569], mas não entendo a "solução portátil" fornecida ema resposta lá [https://stackoverflow.com/questions/43745569/#43748514](envolvendoconst auto this_ = ...

2 a resposta

Constante integral passada por valor, tratada como constexpr?

Embora eu tenha usado código como esse antes e fique claro que o compilador tem informações suficientes para funcionar, eu realmente não entendo por que isso compila: template <class T, class I> auto foo(const T& t, I i) { return std::get<i>(t); ...