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.
