频道栏目
读书频道 > web开发 > .NET > Visual C++ .NET程序设计教程(第2版)
2.1.3 理解程序框架
2012-11-26 10:25:12     我来说两句
收藏   我要投稿
本书以Visual C++ .NET为平台介绍程序设计方法。第一部分为教程,首先介绍Visual C++ .NET开发环境,然后介绍C++/CLI语言基础和C++/CLI面向对象编程基础,在这个基础上系统介绍Visual C++ .NET应用程序设计...  立即去当当网订购

通过上述过程,一个C++/CLI控制台应用程序项目Ex_Sum的框架结构就创建好了。在“解决方案资源管理器”页面中,可以看到项目模板为Ex_Sum项目生成了stdafx.cpp、stdafx.h、Ex_Sum.cpp、resource.h、ReadMe.txt、AssemblyInfo.cpp以及该项目的资源文件app.ico、app.rc。

其中,stdafx.cpp是一个只有一条语句(#include "stdafx.h")的文件,stdafx.h是Visual C++ .NET为每个项目配置的用来预编译的文件,在stdafx.h文件中可以加入应用程序所需要的头文件;ReadMe.txt是Visual C++ .NET为每个项目配置的说明文件,它包括对项目模板产生文件类型的说明以及操作的一些技巧;resource.h是用来定义资源标识符的头文件;app.ico、app.rc是项目Ex_Sum的图标和资源文件;AssemblyInfo.cpp文件用来控制程序集的属性,程序集用来构成基本部署单元、版本控制、重新使用、激活范围和安全权限。

实际上,Ex_Sum.cpp才是项目模板产生的“真正”具有实际意义的程序源代码文件,几乎所有的代码都是添加在这个文件中。也正是因为如此,Ex_Sum项目创建后,代码编辑器将自动打开Ex_Sum.cpp源文件内容。

代码“using namespace System;”中,using和namespace是C++/CLI关键字,用来使用System命名空间。命名空间是“类型”的一种逻辑命名方案,.NET使用该命名方案用于将类型按相关功能的逻辑类别进行分组,利用命名空间可以使开发人员更容易在代码中浏览和引用类型。System是.NET框架根命名空间,包含最基本的类型,有一两百个,如用于数据流的输入输出的System::IO、用于支持GDI+的2D图形绘制的System::Drawing、用于文本处理的System::Text以及基于Windows窗体应用程序设计的System::Windows::Forms等,每个类型都包含若干个子类。

代码中,main函数是程序的入口点,是程序的主函数,每一个基于C++/CLI应用程序都必须包含一个且只能包含一个这样的主函数,也包含Windows窗体应用程序。main函数只有一个形参,这就是String^类型的数组(array)。它与标准C++中main函数的参数的作用相同,它们都是用于接收在命令行执行程序时的输入参数。

主函数中的Console是System命名空间中的一个类,它用于控制台应用程序的标准输出和输入。WriteLine是Console类的一个成员函数,用来向控制台输出一行文本,域运算符“::”用来通知编译系统该函数所属的类。

“WriteLine(L"Hello World")”是将“Hello World”字符串整行显示在控制台窗口中,前缀“L”用来指明后面的字符串是一个以Unicode来存储的字符串常量。除WriteLine 外,Console类中类似这样的函数还有Write、Read、ReadLine。Write函数表示向控制台输出文本但不换行,Read和ReadLine分别表示从控制台读入若干字符和一行文本。

代码中的“/*......*/”之间的内容或“//”开始一直到行尾的内容是用来注释的,它的目的只是为了提高程序的可读性,对编译和运行并不起作用。正是因为这一点,所以注释的内容既可以用汉字来表示,也可以用英文来说明,只要便于理解就行。需要说明的是,“//”称为行注释,而“/*......*/”可以出现在程序中的任何位置,但“/*”和“*/”须成对出现,称为块注释。

您对本文章有什么意见或着疑问吗?请到论坛讨论您的关注和建议是我们前行的参考和动力  
上一篇:2.1.2 创建控制台程序
下一篇:2.1.4 修改并添加代码
相关文章
图文推荐
排行
热门
最新书评
文章
下载
读书
特别推荐

关于我们 | 联系我们 | 广告服务 | 投资合作 | 版权申明 | 在线帮助 | 网站地图 | 作品发布 | Vip技术培训 | 举报中心

版权所有: 红黑联盟--致力于做实用的IT技术学习网站