Resultados da pesquisa a pedido "c++17"

2 a resposta

Qual é o objetivo dos tipos compatíveis com layout?

O padrão define [http://eel.is/c++draft/basic.types#11] quando dois tipos são compatível com layout. Mas não vejo em nenhum lugar do padrão quais são as consequências quando dois tipos são compatível com layout. Parece que compatível com layout é ...

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

2 a resposta

Evite chamar o construtor de movimentos

Tenho o seguinte exemplo #include <cstdint> class FooC { public: FooC(uint16_t iPort, uint16_t iPin) : PORT(iPort) , PIN(iPin) { }; ~FooC() = default; FooC() = delete; FooC(const FooC&) = delete; FooC(FooC&&) = delete; private: const uint16_t ...

2 a resposta

Mapeando um valor de parâmetro de modelo integral para um tipo primitivo

Quero mapear um número para um tipo. Neste exemplo, criarei uma função que mapeia um resultado sizeof () para um tipo primitivo assinad Estou me perguntando se existe uma maneira melhor de fazer o que fiz abaixo no C ++ moderno, que é pegar um ...

4 a resposta

c_str () vs. data () quando se trata de retornar o tipo

epois do C ++ 11, pensei emc_str() edata() equivalentement [https://stackoverflow.com/questions/194634/string-c-str-vs-data]. C ++ 17 introduz uma sobrecarga para o último, que retorna um ponteiro não constante referênci ...

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

2 a resposta

Como posso detectar que um construtor é realmente consexpr, para que eu possa utilizar a inicialização estátic

Veja este código: struct NonConstexpr { NonConstexpr() { } }; template <typename T> struct Bar { NonConstexpr nonConstexpr; constexpr Bar() { } }; struct Foo { Bar<void> bar; constexpr Foo() { } }; Neste código,Foo construtor de @ é marcado ...

1 a resposta

O intervalo explícito-v3 decltype é avaliado como nulo?

Estou tentando obter um tipo explícito de um intervalo (talvez eu queira armazená-lo como um campo em uma classe no futuro). No entanto, por algum motivo, ele avalia comovoid? #include <iostream> #include <set> #include ...

3 a resposta

aneira mais simples de determinar o tipo de retorno da funç

Dada uma função muito simples, mas longa, como: int foo(int a, int b, int c, int d) { return 1; } // using ReturnTypeOfFoo = ??? Qual é a maneira mais simples e concisa de determinar o tipo de retorno da função ReturnTypeOfFoo, neste ...

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