Perguntas com a marcação «c++17»

C ++ 17 é o nome do padrão C ++ aprovado em 2017. Ele se baseia no padrão C ++ 14 anterior, melhorando a linguagem principal e a biblioteca padrão e adicionando alguns novos recursos de linguagem.


6
Por que usar std :: make_unique em C ++ 17?
Pelo que entendi, C ++ 14 foi introduzido std::make_uniqueporque, como resultado da ordem de avaliação dos parâmetros não ser especificada, isso não era seguro: f(std::unique_ptr<MyClass>(new MyClass(param)), g()); // Syntax A (Explicação: se a avaliação primeiro alocar a memória para o ponteiro bruto, em seguida, chamar g()e uma exceção for lançada …
96 c++  c++17  unique-ptr 


4
experimental :: erro do vinculador do sistema de arquivos
Eu tento usar os novos recursos do c ++ 1z na cabeça do desenvolvimento dentro do gcc 6.0. Se eu tentar este pequeno exemplo: #include <iostream> #include <experimental/filesystem> namespace fs = std::experimental::filesystem; int main() { fs::path p1 = "/home/pete/checkit"; std::cout << "p1 = " << p1 << std::endl; } Eu …
94 c++  gcc  c++17 


1
Como funciona a eliminação de cópia garantida?
Na reunião de Padrões Oulu ISO C ++ de 2016, uma proposta chamada Elisão de cópia garantida por meio de categorias de valor simplificadas foi votada em C ++ 17 pelo comitê de padrões. Como funciona exatamente a eliminação de cópia garantida? Abrange alguns casos em que a eliminação da …





2
Por que remove_reference não funciona em funções?
Ocorreu algo estranho ao fazer algum modelo de metaprogramação no outro dia. Basicamente, tudo se resume a essa afirmação que não (como eu esperaria) passar. static_assert(std::is_same_v<void(), std::remove_reference_t<void()&>>); No começo, pensei que estava cometendo um erro sintático ao definir uma referência de função, mas essa afirmação passa, mostrando que esse não …
38 c++  templates  types  c++17 





Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.