快精灵印艺坊 您身边的文印专家
广州名片 深圳名片 会员卡 贵宾卡 印刷 设计教程
产品展示 在线订购 会员中心 产品模板 设计指南 在线编辑
 首页 名片设计   CorelDRAW   Illustrator   AuotoCAD   Painter   其他软件   Photoshop   Fireworks   Flash  

 » 彩色名片
 » PVC卡
 » 彩色磁性卡
 » 彩页/画册
 » 个性印务
 » 彩色不干胶
 » 明信片
   » 明信片
   » 彩色书签
   » 门挂
 » 其他产品与服务
   » 创业锦囊
   » 办公用品
     » 信封、信纸
     » 便签纸、斜面纸砖
     » 无碳复印纸
   » 海报
   » 大篇幅印刷
     » KT板
     » 海报
     » 横幅

展现C#(3):第一个C#应用程序

     作者:rainbow ASP动网先锋
  
  3.0 选择一个编辑器
  
  尽管我是一个顽固的Notepad狂,但这次我不建议用它编辑源码。原因是你正在与真正的编程语言打交道,使用Notepad编辑源码编译时可能产生大量的错误信息行(C++程序员知道我在说什么。)
  
  你有几种选择。可以重新配置你信任的老式Visual C++ 6.0,使它能够和C#源文件一起工作。第二种选择是使用新的Visual Studio 7。第三,你可以用任何第三方程序编辑器,最好要支持行数、色彩编码、工具集成和良好的搜索功能。
  
  
  图3.1 CodeWright 是你可以用于创建C#代码文件众多可能编辑器中的一个。
  
  
  当然,在所提到的编辑器中,没有一个对创建C#程序来说是必要的。用Notepad肯定可以编辑。但是,假如你考虑到要编写更大的项目,最好还是忍痛割爱吧。
  
  
  3.1 "Hello World" 代码
  
  讨论编辑器有点离题 ,让我们把话题转回到一个异常出名的小应用程序。这个最短的C#版本应用程序见清单3.1。把它存起来,文件名为 helloworld.cs,以便使你能按照说明,完成诸如编译应用程序等其它余下来的步骤。
  
  
  清单 3.1 最简朴的 "Hello World "程序
  
  
  1: class HelloWorld
  
  2: {
  
  3: public static void Main()
  
  4: {
  
  5: System.Console.WriteLine("Hello World");
  
  6: }
  
  7: }
  
  
  在C#中,代码块(语句组)由大括弧({和})所括住。所以,甚至你以前没有C++的经验,你也可以说出Main()方式就是HelloWorld 类语句的一部分,因为类被括在所定义的大括弧中。
  
  C#应用程序(可执行)的入口点就是 static Main 方式,它必须包含在一个类中。仅有一个类能使用该标志定义,除非你告诉编译器它应使用哪一个 Main 方式(否侧,会产生一个编译错误)。
  
  和C++相比,Main的第一个字母是大写的M,而不是你曾经使用过的小写字母。在这个方式中,你的程序开始并结束。方式中可以调用其它方式――如这个例子中,用于输出文本――或者创建对象并激活该方式。
  
  正如你所看到的,Main方式返回一个void类型。
  
  public static void Main()
  
  尽管看到这些语句时,C++程序员肯定会觉得似曾相识,但是其他程序员并不如此。首先,public 的访问标志告诉我们这个方式可以被任何程序访问,这是它被调用的必要条件。其次,static 意味着没有先创建类的实例也可以调用方式――你所要做的就是用类名调用方式。
  
  HelloWorld.Main();
  
  但是,我不赞成在Main方式中执行这行代码,递归会导致堆栈溢出。
  
  另一重要的方面是返回类型。对于方式Main,可选择void (意味着根本就没有返回值),或用int 为整型结果(应用程序返回的错误级别)。因此,两种可能的Main方式为:
  
  public static void Main()
  
  public static int Main()
  
  
  C++程序员会同样知道后面我要提到的――可以传给应用程序的命令行参数数组。如:
  
  public static void Main(string[] args)
  
  
  我现在并不想具体地说明如何访问参数,但我想事先给C++程序员一个警告:和C++相比,应用程序路径不是这个数组的一部分。仅仅那些参数包含在这个数组中。
  
  在对Main方式并不简短的介绍之后,让我们把注重力集中到唯一真正的代码行――这行代码在屏幕上显示"Hello World"。
  
  System.Console.WriteLine("Hello World");
  
  如果不是由于有了System,大家会立刻猜到WriteLine是Console 对象的一个静态方式。那么System代表什么呢? 它是包含Console对象的名字空间(范围),实际上并不是每次都在Console对象前加上名字空间的前缀,你可以象清单3.2所示范的那样,在应用程序中引入名字空间。
  
  
  清单3.2 在应用程序中引入名字空间
  
  1: using System;
  
  2:
  
  3: class HelloWorld
  
  4: {
  
  5: public static void Main()
  
  6: {
  
  7: Console.WriteLine("Hello World");
  
  8: }
  
  9: }
  
  
  所有你要做的就是给System名字空间加一个using指令。在这之后,不再需要规定名字空间,就可以使用它们的方式和属性了。NGWS 框架体系中有很多的名字空间,我只对巨大的名字空间池中的少数几个对象进行探讨。但在第八章 "用C#写组件"将介绍为你的对象创建自己的名字空间。
  
  


返回类别: 教程
上一教程: XMLHTTP+Javascript+Asp写得聊天室,无刷新实现(二)
下一教程: 如何用JavaScript识别Netscape 6 浏览器

您可以阅读与"展现C#(3):第一个C#应用程序"相关的教程:
· 一个用C#写的扫描ASP源码漏洞的应用程序(续)
· 一个用C#写的扫描ASP源码漏洞的应用程序
· 巧用缓存提高ASP应用程序的性能
· 一个功能完善的专栏治理的程序->这是asp.net的第二个应用(二)
· 一个功能完善的专栏治理的程序->这是asp.net的第二个应用(一)
    微笑服务 优质保证 索取样品