C++0x

De ccppbrasil.org

Tabela de conteúdo

Plano de Trabalho

Não há plano de trabalho; há apenas oportunidades de trabalho um pouco dispersas.

A implementação de C++0x no GCC ainda está incompleta; certamente voluntários serão muito bem vindos aos projetos. Muitas das novas características do C++0x já estão implementadas nas últimas versões de compiladores como o GCC e o ICC.

O working draft do C++0x está atualmente no estágio candidate draft, resolvendo comentários dos corpos nacionais. O grupo de trabalho espera lançar um segundo candidate draft antes de solicitar aprovação final.

Com o GCC 4.4 à mão, é possível escrever hoje programas em C++0x utilizando ferramentas como automatic type deduction, rvalue references, variadic templates e alguns elementos novos da biblioteca. Rvalue references, em particular, oferecem a oportunidade de combinar expressões lingüísticas muito confortáveis que, em C++03, eram evitadas por causar a proliferação de objetos temporários; bem como simplificar a programação de sistemas viabilizando a transferência de objetos, em contraste com a cópia de objetos, através de move semantics.

Com o ICC versão 11 ou GCC 4.5 é possível experimentar o mecanismo de funções lambda.

Status

Este projeto mantém a libstdc++0x, uma biblioteca de extensão à libstdc++ do GCC 4.3 contendo elementos do C++0x que não estão disponíveis nesta versão do compilador. A libstdc++0x contém implementações para <ratio>, <type_traits> (common_type), <memory> (unique_ptr), <chrono>, <thread>, <mutex> e <condition_variable>.

Essa biblioteca não é necessária com o GCC 4.4 ou mais recente, que contém esses elementos e outros mais.

Repositório de Código-Fonte

Você pode navegar pelo código-fonte dos projetos do Grupo:

http://code.google.com/p/ccppbrasil/source/browse

Ou pode fazer um checkout com o Subversion:

svn checkout http://ccppbrasil.googlecode.com/svn/projects/cxx0x/stdc++0x

Recursos

Usuários de Linux devem simplesmente atualizar suas distribuições para a versão mais recente, que já deve trazer o GCC versão 4.4 ou mais recente, que oferece suporte experimental a C++0x utilizando-se o parâmetro --std=gnu++0x.

Usuários de Linux também tem à disposição o ICC distribuído livremente para uso não-comercial.

Usuários de Windows podem usar o MinGW, que oferece o GCC 4.4 em caráter beta.

Usuários de Windows também tem à disposição o Microsoft Visual Studio 2010, distribuído livremente na versão Lite.

Referências

Working Draft, Standard for Programming Language C++

Ferramentas pessoais