Pergunta

Quais são algumas sugestões de compiladores C++ fáceis de usar para iniciantes?Os gratuitos ou de código aberto seriam preferidos.

Foi útil?

Solução

O GCC é uma boa escolha para coisas simples.

A edição Visual Studio Express é a versão gratuita do principal compilador C++ do Windows.

Se você estiver no Windows, eu usaria o VS.Se você estiver no Linux, você deve usar o GCC.

*Eu digo GCC para coisas simples porque para um projeto mais complicado o processo de construção não é tão fácil

Outras dicas

G++ é o compilador GNU C++.A maioria das distros *nix deve ter o pacote disponível.

Eu recomendo usar Desenvolvedor C++.É um IDE pequeno e leve que usa as portas mingw como back-end, o que significa que você estará compilando o compilador C/C++ de fato, gcc

Para um iniciante:g++ --pedantic-errors -Wall

Isso ajudará a impor uma boa programação desde o início.

gcc com -Wall (ativar todos os avisos) -Werror (transformar avisos em erros), -pedantic (obter avisos para código não padrão) e -ansi (criar o padrão c++98).

Se um aviso for algo que você conhece e precisa desligar, você pode transformá-lo novamente em avisos.

Eu recomendo o gcc porque ele foi projetado para ser usado na linha de comando, e você pode compilar programas simples e ver exatamente o que está acontecendo:

g++ -o myprogram myprogram.cc
ls -l myprogram

Um arquivo entra, dois arquivos saem.Com o Visual C++, a maioria das pessoas o usa com a GUI, onde você precisa configurar um projeto e o IDE gera vários arquivos que podem atrapalhar se você estiver apenas começando.

Se estiver usando Windows, você escolherá entre MingW ou Cygwin.Cygwin é um pouco trabalhoso de configurar porque você tem que escolher quais pacotes instalar, mas não tenho experiência com MingW.

Você sempre pode usar o compilador C++ da Gnu Compiler Collection (GCC).Ele está disponível para quase todos os sistemas Unix do planeta, BSDs, Mac OS, Linux e Windows (via Cygwin ou mingw).

Vários IDEs oferecem suporte ao compilador GCC C++, por ex.KDevelop no Linux/KDE ou Dev-CPP como mencionado em outros posts.

O Microsoft Visual Studio Express Edition de seu compilador C++ é bom

Blocos de código é um IDE muito bom que pode usar além de muitos outros compiladores CL.EXE (do visual studio) e gcc.Ele vem também em uma versão com gcc incluído.

A edição Visual Studio Express também é uma escolha muito boa (com Platform SDK se você desenvolver aplicativos que chamam funções winapi).

O Eclipse é bom para Mac ou para o Xcode gratuito da Apple, que pode ser baixado/baixado em seu site de desenvolvimento.

Um motivo para usar g++ ou MingW/Cygwin que ainda não foi mencionado é que iniciar e IDE ocultará parte do que está acontecendo.Será extremamente útil no futuro entender as diferenças entre compilar e vincular, por exemplo.Aprenda e entenda desde o início, e você nem saberá que deveria agradecer a si mesmo mais tarde.

-Máx.

I say GCC for simple things because for a more complicated project the build process isn't so easy

É verdade, mas não acho que a compreensão do processo de construção de um grande projeto seja ortogonal à compreensão do projeto em si.No meu último trabalho em que trabalhei, eles tinham um projeto enorme que precisava ser construído para a plataforma alvo (LynxOS), bem como para um ambiente de emulação (WinXP).Eles optaram por colocar tudo em um arquivo .VCP no Windows e construí-lo como um grande executável.No alvo, eram cerca de 50 processos individuais, então eles escreveram um makefile que listava todos os 3.000 arquivos de origem, compilaram todos em uma grande biblioteca e, em seguida, vincularam os main.cpps individuais para cada executável com a biblioteca multifuncional, para crie 50 executáveis ​​(que compartilhavam talvez 10% de seu código com os outros executáveis).Como resultado, nenhum desenvolvedor tinha ideia de qual código dependia de qualquer outro código.Como resultado, eles nunca se preocuparam em definir interfaces limpas entre qualquer coisa, porque tudo era facilmente acessível a partir de em todos os lugares.Um sistema de construção hierárquico poderia ter ajudado a impor algum tipo de ordem em um repositório de código-fonte desorganizado.

Se você não aprender como os arquivos .cpp produzem código-objeto, o que é uma biblioteca estática, o que é uma biblioteca compartilhada, etc., quando estiver aprendendo C/C++, você ainda precisará aprender em algum momento para ser um desenvolvedor C/C++ competente.

O Visual Studio na linha de comando se comporta exatamente como o GCC.Basta abrir a janela de linha de comando do Visual Studio e:

c:\temp> cl /nologo /EHsc /W4 foo.cpp
c:\temp> dir /b foo.*
foo.cpp  <-- your source file
foo.obj  <-- result of compiling the cpp file
foo.pdb  <-- debugging symbols (friendly names for debugging)
foo.exe  <-- result of linking the obj with libraries

Concordo com Iulian Șerbănoiu: Code::Blocks é uma solução muito boa, utilizável tanto no Linux (ele usará g++/gcc) quanto no Windows (ele usará o compilador MS ou gcc)

Observe que você deve pelo menos uma ou duas vezes tentar compilar usando um bom e velho makefile, apenas para entender a lógica por trás de cabeçalhos, fontes, inclusão, etc.etc..

Como iniciante, não se esqueça de ler livros sobre C++ (os livros de Scott Meyers e Herb Sutter vêm à mente quando você tenta aprender as peculiaridades da linguagem) e de estudar projetos de código aberto de alto perfil para aprender com seu estilo de código. (eles já encontraram os problemas que você encontrará e provavelmente encontraram soluções viáveis...).

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top