我即将开始我的第一个C++项目。在过去的10年中,我做过很多C#和VB(VB6和VB.NET),以及Java和其他一些东西,只是直到现在才有学习C++的需求。
我计划使用Visual Studio 2008,但我想知道有经验的C++程序员是否认为Visual Studio是新手学习C++的好IDE。
在任何方面上,VS会让我更难正确地学习编程吗?
VS会鼓励任何不良习惯吗?
有什么需要注意的陷阱吗?
我即将开始我的第一个C++项目。在过去的10年中,我做过很多C#和VB(VB6和VB.NET),以及Java和其他一些东西,只是直到现在才有学习C++的需求。
我计划使用Visual Studio 2008,但我想知道有经验的C++程序员是否认为Visual Studio是新手学习C++的好IDE。
在任何方面上,VS会让我更难正确地学习编程吗?
VS会鼓励任何不良习惯吗?
有什么需要注意的陷阱吗?
首先,VS 2008非常强大,可能是C++编程中最好的IDE之一(至少配合支持插件如Visual Assist X)。
需要注意的是,C ++ 是一个难以让编译器正确处理的语言,并且默认警告级别相当宽松。 因此,它经常会容忍错误或错误的代码。 始终建议在其他编译器上检查代码 - 至少在启用严格模式下使用 g++
的高警告级别。
此外,鼓励在Visual Studio中将警告级别设置得更高。
Visual Studio 是一款出色的 C++ 集成开发环境。如果你已经熟悉了 C# 的话,使用起来会更加得心应手。
VS 2008适用于开发C ++。像其他人说的那样,我会购买Visual Assist X,因为它可以提供强大的Intellisense和更好的代码大纲。此外,与VS一起使用的MSDN文档具有出色的质量,并包括对C ++语言和标准库的完整描述。在Windows上,您如果不使用VS将是疯狂的。
如果你已经通过C#了解了Visual Studio,那么请使用它。我同意其他人的观点,你应该投资于Visual Assist。
你最好使用代码编辑器和构建工具
作为一个IDE,VS相当糟糕(这是主观的)。有很多替代品(肯定更轻量级)
所谓构建工具,不仅指编译器,还包括某种制作/编译等
这样你就可以准备进行真正的跨平台开发(首先),并且作为奖励,你将获得更快速、更舒适的“非小型”项目构建——一条命令构建所有内容。虽然你可以在VS中获得相同的结果(真的吗?),但速度会更快。此外,你可以按照自己想要的方式来设置项目结构8)
至于参考资料,我在我的宠物项目中使用source insight + kjam + msvc编译器
我记得几年前在使用VS时遇到了一些麻烦。实际上问题出在C++编译器上,因为他们没有完全实现语言的某些特性,或者至少没有按照标准的方式实现。
我们转而使用Eclipse CDT,因为它相对容易使用其他编译器,支持自定义makefile和多个目标。
但是如果你计划开发Win32应用,VS可能是最安全的选择。
使用Visual Studio吧,这是一种你已经熟悉的IDE,因此在工具方面它的学习曲线最低。既然你之前没有学过C++,请使用IDE而不是控制台窗口来学习。你会错过的唯一一件事情就是.NET框架。你可以在VS中使用Managed C++,但如果你计划完全使用纯C++,没有任何托管代码,一开始可能会感到害怕。
我一直注意到关于C++的一件事情就是,如果你期望当你开始使用C++时拥有与C#相同的所有工具,你可能会失望。VS是一个很棒的IDE,在.NET出现之前就已经支持了C++,所以请相信它、享受它,并记住,没有什么是完美的。
我曾经问过一个类似的问题这里,只不过是关于在Visual Studio上使用C语言。虽然我个人无法想象没有VS如何进行C#编程,但我发现在VS中使用C语言是一种折磨。我知道这与你所问的不完全相同,但如果你发现在C++中有类似的经历,那么请知道你并不孤单。