对于初学者来说,易于使用的C ++编译器有哪些建议? 自由或开源的将是首选。
学习C ++时可以使用哪些好的编译器? [关闭]
What are some good compilers to use when learning C++? [closed]
===============>>#1 票数:17 已采纳
对于简单的事情,GCC是一个不错的选择。
Visual Studio Express版是主要Windows C ++编译器的免费版本。
如果您在Windows上,我会使用VS。 如果您使用的是Linux,则应使用GCC。
*我说GCC代表简单的事情,因为对于更复杂的项目,构建过程并不那么容易
===============>>#2 票数:4
G ++是GNU C ++编译器。 大多数* nix发行版都应具有可用的软件包。
===============>>#4 票数:3
对于初学者:g ++ --pedantic-errors -Wall
从一开始,它将有助于强制执行良好的编程。
===============>>#5 票数:3
gcc -Wall(启用所有警告)-Werror(将警告更改为错误),-pedantic(获取非标准代码的警告)和-ansi(使标准c ++ 98)。
如果您知道警告并且需要将其关闭,则始终可以将它们重新变成警告。
===============>>#6 票数:3
我建议使用gcc,因为它是设计用于命令行的,并且您可以编译简单的程序并查看正在发生的事情:
g++ -o myprogram myprogram.cc
ls -l myprogram
一进一出,两出。 使用Visual C ++,大多数人将其与GUI一起使用,您必须在其中设置项目,而IDE会生成一堆文件,如果您刚入门,它们可能会妨碍您的工作。
如果您使用的是Windows,则可以在MingW或Cygwin之间进行选择。 Cygwin的设置有点麻烦,因为您必须选择要安装的软件包,但是我没有使用MingW的经验。
===============>>#7 票数:2
您始终可以使用Gnu编译器集合(GCC)中的C ++编译器。 它几乎适用于地球上的任何Unix系统,BSD,Mac OS,Linux和Windows(通过Cygwin或mingw)。
许多IDE支持GCC C ++编译器,例如Linux / KDE下的KDevelop或其他文章中提到的Dev-CPP。
===============>>#8 票数:1
他们的C ++编译器的Microsoft Visual Studio Express Edition很好
===============>>#9 票数:1
CodeBlocks是一个非常好的IDE,可以与其他许多编译器CL.EXE(来自Visual Studio)和gcc一起使用。 它还提供了包含gcc的版本。
Visual Studio Express版本也绝对是不错的选择(如果要开发调用winapi函数的应用程序,则可以使用Platform SDK)。
===============>>#10 票数:1
Eclipse是Mac或Apple自己的免费Xcode的不错选择,可以在其开发站点上下载/删除。
===============>>#11 票数:1
使用g ++或MingW / Cygwin的一个尚未被提及的原因是,启动和IDE将隐藏正在发生的事情。 理解例如编译和链接之间的区别将是非常有用的。 从一开始就学习并理解它,您甚至都不知道以后应该感谢自己。
-最大
===============>>#12 票数:1
I say GCC for simple things because for a more complicated project the build process isn't so easy
是的,但是我不认为理解大型项目的构建过程与理解项目本身是正交的。 我工作的最后一份工作是,他们有一个庞大的项目,需要为目标平台(LynxOS)和仿真环境(WinXP)构建。 他们选择将所有内容都放入一个.VCP文件以在Windows上使用,并将其构建为一个大型可执行文件。 目标是大约50个单独的进程,因此他们编写了一个makefile,列出了所有3000个源文件,将它们全部编译到一个大的库中,然后将每个可执行文件的单独main.cpp与多合一库链接到制作50个可执行文件(这些代码可能与其他可执行文件共享其代码的10%)。 结果,没有开发人员知道什么代码依赖于任何其他代码。 结果,他们从不费力尝试在任何事物之间定义干净的接口,因为任何地方都可以轻松访问所有事物。 分层构建系统可以帮助在原本杂乱无章的源代码存储库中强制执行某种顺序。
如果您不学习.cpp文件如何生成目标代码,什么是静态库,什么是共享库等,那么在学习C / C ++时,您仍然需要在某个时候学习它才能成为目标语言。胜任的C / C ++开发人员。
===============>>#13 票数:0
命令行中的Visual Studio的行为类似于GCC。 只需打开Visual Studio命令行窗口,然后:
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
===============>>#14 票数:0
我同意Iulian Șerbănoiu的观点: Code :: Blocks是一个非常好的解决方案 ,可从Linux(它将使用g ++ / gcc)和Windows(它将使用MS编译器或gcc)使用
请注意,如果仅是为了理解标头,源代码,包含等的逻辑,则应该至少使用一两次,尝试使用一个良好的旧makefile进行编译。
作为初学者,不要忘记阅读有关C ++的书(当尝试学习语言的怪癖时,会想到Scott Meyers和Herb Sutter的书),并研究开放源码的高知名度项目,以从其代码风格中学习(他们已经遇到了您将遇到的问题,并且可能找到了可行的解决方案...)。