我正在尝试找出要使用哪个 C/C++ 编译器。我在维基百科上找到了这个 C/C++ 编译器列表:
http://en.wikipedia.org/wiki/List_of_compilers#C.2FC.2B.2B_compilers
我相当确定我想使用开源编译器。我觉得如果它是开源的,那么它将是一个更完整的编译器,因为许多程序员的观点都被用来使它变得更好。如果您不同意,请告诉我。
我应该提一下,我计划学习 C/C++ 主要是为了编写与 Windows、Linux、MAC 和 iPhone 操作系统兼容的 2D/3D 游戏应用程序。我目前使用的是 Windows Vista x64 操作系统。
首先,恕我直言,作为初学者,您的开发环境(IDE)比编译器更重要。
我认为人们很早就过分强调编译器的选择。虽然 C++ 不是 Java,但它应该是可移植的。
如果您正在编写的程序仅适用于特定的编译器,那么您可能做错了事情,或者可以做一些工作来使其更具可移植性。
如果您达到了编译器选择对您的性能产生重大影响的地步,那么您已经完善了程序中的其他所有内容,并且您处于良好的状态,并且您的能力也相当先进。我们曾经在计算机科学课程的相当高级阶段教授编译器之间的差异。
如果您使用基于 UNIX 的计算机(Linux、Mac、实际的 Linux),那么几乎 GNU (g++) 就是最佳选择,并且是相当标准的。如果它足以编译您的操作系统,那么它可能也适合您。在 Mac 上,您可以使用 XCode 作为 IDE,它与 g++ 的接口很好。在 Linux 上,有些人更喜欢命令行工具,尽管您可能喜欢 Eclipse C++ 支持,但现在它比 3-4 年前要好得多。
Windows 上的事情比较棘手。如果您负担得起,可以访问或有资格获得其中一个免费版本(例如,通过学校),我认为 Microsoft Visual C++ 环境(或现在的任何名称)非常适合学习,而且它们用于生产。我认为现在实际上有一个轻量级的视觉工作室,重点是 C++,这可能是一个好的开始。如果不这样做,您可能可以找到专门针对 C++ 并包含 GNU 编译器实现的 Eclipse 发行版。
在学习这些语言时使用 gcc 和 g++,这对现在来说是一个足够大的任务。如果您将来需要一个专门的编译器,您将希望对语言和问题领域有更深入的了解,以便正确评估候选者。
我觉得如果它是开源的,那么它将是一个更完整的编译器,因为使用了许多程序员的观点来使其变得更好。
这不一定是真的。你也可以说,如果你使用微软的编译器,它将是 Windows 的最佳选择,因为微软最了解如何针对 Windows 优化编译器。
Microsoft 有 Visual C++ Express Edition,它是免费的,当然还包括一个非常适合 Windows 开发的漂亮 IDE。
但是如果您对制作可移植软件感兴趣,请查看 GCC,它是 Linux 上的默认编译器,并且在 Mac 上也可用。 (iPhone 的工作方式完全不同,需要仅在 Mac OS X 上运行的特殊工具)。您可以使用 Cygwin 或 MinGW 获取适用于 Windows 的 GCC。
获取 Visual Studio Express(在我看来,设置更简单、更快捷)并用它来学习;当您认为您对 C++ 以及“事物”如何工作有足够的了解时,您可以开始使用 QT 或 GCC(带有 cygwin)之类的东西并学习移植到不同的平台。
对于 Windows,你可以使用 CodeBlocks 我相信它使用 gcc 并且它非常用户友好
编写可移植的C++代码的关键是: