Há algum uso do C++ 03/98 com o qual você não está acostumado ou não gosta? Quais são os novos recursos do C++ 11 que você está usando?

 

  1. Não há inferência automática de tipos; os tipos de variáveis ​​precisam ser especificados explicitamente.
  2. Não há semântica de movimentação e referências de valor, resultando em código ineficiente.
  3. Não há palavra-chave nullptr, então você precisa usar 0 ou NULL para representar um ponteiro nulo.
  4. Os arquivos de cabeçalho e de origem precisam ser incluídos e vinculados manualmente, o que é propenso a problemas de definição duplicada e dependência.
  5. Não há funções emplace e emplace_back do contêiner da biblioteca padrão, resultando em construção e inserção de elementos ineficientes.

O C++ 11 fez uma série de melhorias e extensões para resolver os problemas acima, incluindo principalmente os seguintes recursos:

  1. As palavras-chave auto e decltype podem deduzir os tipos de variáveis ​​e expressões.
  2. Mova a semântica e as referências de valor, transfira a propriedade de objetos de valor e evite cópias e destruição desnecessárias.
  3. A palavra-chave nullptr, em vez de 0 e NULL, pode representar um ponteiro nulo com mais precisão.
  4. A inclusão e vinculação automática de arquivos de cabeçalho e arquivos de origem evitam definições duplicadas e problemas de dependência.
  5. As funções emplace e emplace_back do contêiner da biblioteca padrão podem construir e inserir elementos diretamente no contêiner, o que é mais eficiente.

        Além disso, o C++ 11 também adiciona novos recursos, como expressões lambda, funções constexpr e modelos variados, o que expande os recursos de linguagem e a expressividade do C++.

Supongo que te gusta

Origin blog.csdn.net/SYC20110120/article/details/133203705
Recomendado
Clasificación