1.1 了解C++程序设计
C++是一门同时具备面向过程和对象特性的语言,学习C++语言既可以了解底层API函数的使用方法、控制变量的内存生存周期,编写功能强大高效的算法,也可以从对象的角度组织各个模块,掌握面向对象的编程思想。在学习C++之后能够对程序设计有深刻的体会,为进一步学习打下坚实基础。
1.1.1 学习C++的好处
在软件技术快速更新的今天,初学者面临的第一个问题就是:我该学哪种语言。刚接触编程的初学者容易被ASP.NET、Java、Visual Basic、PHP等名字弄得晕头转向,诚然这是一个让开发人员疯狂的年代,曾经引以为豪的技术可能不久就被新技术替代,或者由于公司项目需要不得不从自己擅长的技术平台转向新平台。心中不免思考:究竟什么东西是一劳永逸的?答案是没有,没有一门技术可以解决所有问题,但有一样东西可以帮助你快速转入其他相关领域,那就是编程的思想。
所谓编程思想,即从程序的角度思考解决问题,了解程序代码的运行原理、变量的生存周期、窗口的诞生与销毁、消息的传递流程等。当深入了解这些底层原理后,再去学习任何一门开发技术,都会有居高临下之感,从而快速转型。
和C#、Java等托管代码不同,C++可以直接操作物理内存,自由控制变量的生存周期,学习C++你可以了解程序运行时,哪些要占用内存、内存分配方式、变量内存布局、内存释放、内存泄漏等其他语言无法涉及的深层内容。
C++面向对象的特性,可以让你了解如何构造类、创建类对象、释放类对象、类继承机制、虚函数实现原理等,C#、Java都是由C++演变而来的,学习C++可以掌握语言最核心的内容,其他语言则可触类旁通。事实证明,有C++背景的程序员学习其他语言周期比较短,而且理解得更加深刻,记住,真正的程序员学习C++!
1.1.2 最简单的C++程序——hello world
【实例1-1】新建一个控制台程序hello world,输出一段文字。
(1)启动VC 6.0,选择File|New命令,打开New窗口,在Projects选项卡里选择Win32 Console Application项(Win32控制台应用程序),在Project name文本框中输入hello world。在Location文本框里选择工程存放路径,如图1-1所示。
图1-1 新建工程窗口
(2)单击OK按钮,打开Win32 Console Application窗口,选择An empty project项(空工程),单击Finish按钮,再单击OK按钮,完成工程的创建。
(3)选择File|New命令,打开New窗口,在Files选项卡里选择C++ Source File项(C++源文件),在File文本框中输入hello world,如图1-2所示。
图1-2 添加C++源文件
(4)单击OK按钮后,在工作区窗口选择FileView标签,展开Source Files节点,双击添加的源文件main.cpp,打开代码编辑窗口,输入以下代码:
#include <iostream> //包含输入/输出流头文件 using namespace std; //使用标准命名空间std int main() //主函数 { cout<<"hello world"<<endl; return 0; //返回0 }
(5)按F7键或单击按钮,生成EXE可执行程序,单击按钮执行EXE程序,结果如图1-3所示。
图1-3 输出hello world