Resultados da pesquisa a pedido "c++17"

3 a resposta

As variáveis embutidas são únicas além dos limites?

Este é um acompanhamento deessa questão [https://stackoverflow.com/questions/51332851/alternative-id-generators-for-types/51334917#comment89715080_51334917] . Conforme mencionado nos comentários da resposta: Uma variável embutida tem a ...

1 a resposta

Preciso colocar constexpr depois do else-if?

Inspirado poresta resposta [https://stackoverflow.com/a/52355930/7151494], Tentei copiar e colar (e adicionar testes nomain()) este código: template<typename T> std::tuple<int, double> foo(T a) { if constexpr (std::is_same_v<int, T>) return {a, ...

2 a resposta

Verifique se um tipo é passado no pacote de parâmetros de modelos variados

Ouvi em algum lugar que, usando a nova sintaxe C ++ 1z, é realmente fácil verificar se um tipo é passado no pacote de parâmetros de modelos variados - aparentemente você pode fazer isso com código que tem quase uma linha de comprimento. Isso é ...

1 a resposta

Autoinicialização de uma variável estática constexpr, está bem formada?

Dada a seguinte declaração no espaço para nome global: constexpr int x = x;Isso é bem formado? O rascunho da seção padrão do C ++ 143.6.2 [basic.start.init] diz: Variáveis com duração de armazenamento estático (3.7.1) ou com duração ...

1 a resposta

Std :: move é seguro em uma lista de argumentos quando o argumento é encaminhado, e não movido construído?

Tentando fornecer uma solução parastd :: string_view e std :: string em std :: unordered_set [https://stackoverflow.com/q/51749081/364696], Eu estou brincando com a ...

2 a resposta

Como forçar a dedução do argumento do modelo de classe ao construir uma classe em suas próprias funções de membro?

Considere o seguinte código: struct A {}; template <typename T> struct B { B(T) {} auto foo() {return B(A{});} // error: no matching function for call to 'B<int>::B(A)' }; auto foo() {return B(A{});} // compiles int main() { foo(); B b(0); ...

1 a resposta

Por que a sobrecarga const && do as_const foi excluída?

Com umblog sobre o progresso do C ++ 17 [http://talesofcpp.fusionfenix.com/post-23/interlude]Eu li o seguinte: P0007 propõe um modelo de função auxiliaras_const, que simplesmente pega uma referência e a retorna como uma referência ...

1 a resposta

T declval () em vez de T&& declval () para common_type

Não é melhor usarstd::declval declarado na forma: template< class T > T declval(); // (1)então atual: template< class T > T && declval(); // (2)parastd::common_type (possivelmente com nome diferente apenas para esse propósito ...

4 a resposta

Determinar se um construtor de uma classe base abstrata não é exceção?

No C ++ 11 e posterior, como determinar se um construtor de uma classe base abstrata énoexcept? Os seguintes métodos não funcionam: #include <new> #include <type_traits> #include <utility> struct Base { Base() noexcept; virtual int f() = 0; }; ...

1 a resposta

Podemos nos referir a variáveis-membro em uma especificação noexcept?

Considere o seguinte snippet de código: template<class Tuple> class vector { public: typename Tuple::size_type size() const noexcept(noexcept(m_elements.size())) { return m_elements.size(); } private: Tuple m_elements; }; class tuple { public: ...