Visual Studio 2024快速入门

2025-04-26

5. Visual C#2005快速入门之声明bool变量

与现实世界不同,在编程的世界中,每一件事情要么黑,要么白;要么对,要么错;要么是真的,要么是假的。例如,假定你创建一个名为x的整数变量,把值99赋给x,然后问:“x中包含了值99吗?”答案显然是肯定的。如果你问:“x小于10吗?”答案显然是否定的。这些正是布尔(Boolean)表达式的例子。一个布尔表达式肯定求值为true或false。

注意 对于这些问题,并非所有编程语言都会做出同样的回答。例如,一个未赋值的变量有一个未定义的值,不能说它肯定小于10。正因为此,新手在写C和C++程序时容易出错。Microsoft Visual C#编译器解决这个问题的方案是确保在检查一个值之前,肯定已经为它赋了一个值。如果企图检查一个未赋值的变量的内容,程序将不能编译。

Microsoft Visual C#提供了一个名为bool的数据类型。bool变量只能容纳两个值之一:true或false。例如,下列3个语句声明了一个名为areYouReady的bool变量,将true值赋给它,并在控制台上输出它的值: bool areYouReady; areYouReady = true;

Console.WriteLine(areYouReady); // 输出True

6. Visual C#2005快速入门之基础语法

对于那些从未见过C#代码的读者,本文将介绍C#编程语言的基本语法。记住,现在只是对C#的浅尝辄止,仅足以帮助你理解本文中的范例代码。在后面我们还会充分地深入C#语言,创建一个功能完整的学生选课系统(Student Registration System, SRS)应用程序。

如果你还没有花时间阅读本书前言,现在正当其时!SRS系统的需求在文前介绍篇的末尾部分被作为一个案例来介绍。

“伪代码”vs.真正的C#代码

本文开始时就提到,我们将在本书第一和第二部分中偶尔使用伪代码来隐藏与范例关系不大的逻辑细节。在同时使用伪代码和真实代码时,为了避免混淆,我们将用斜体字表示伪代码,普通字体表示真实代码。

下面是真实的C#语法: for (int i = 0; i <= 10; i++) {

下面是伪代码:

Compute the grade for the ith Student }

后面我们还会不时提醒你,让你不致试图敲入伪代码然后编译之。

7. Visual C# 2005快速入门之编写方法

在下面的练习中,将创建一个应用程序,它包含的一个方法能够计算一名顾问的收费金额——假定该顾问每天收取固定的费用,将根据工作了多少天来收费。首先要开发应用程序的逻辑,然后利用“生成方法存根向导”来写出这个逻辑使用的方法。接着,我们将在一个控制台应用程序中运行方法,以获得对该程序的最终印象。最后,我们将使用Visual Studio 2005调试器来检查方法调用。

开发应用程序逻辑

1. 在Visual Studio 2005中打开My Documents文件夹下的\\Microsoft Press\\Visual CSharp Step by Step\\Chapter 3\\DailyRate子文件夹中的DailyRate项目。

2. 在“解决方案资源管理器”中,双击Program.cs文件,以便在“代码和文本编辑器”

窗口中显示程序。

3. 在run方法主体中添加以下语句:

double dailyRate = readDouble(\int noOfDays = readInt(\ writeFee(calculateFee(dailyRate, noOfDays));

应用程序启动时,run方法将由Main方法调用。

刚才在run方法中添加的代码块会调用readDouble方法(马上就要开始写这个方法),以便让用户输入顾问的日费率。下一个语句调用readInt方法(也马上由我们来写)来获取天数。最后将调用writeFee方法(等待编写),以便在屏幕上显示结果。注意,传给writeFee的值是calculateFee方法(最后一个要写的方法)返回的值,该方法获取日费率和天数,并计算出要支付的总金额。

注意 由于尚未写好readDouble,readInt,writeFee或者calculateFee方法,所以“智能感知”无法在输入上述代码的时候自动列出它们。另外,先不要试图生成程序,因为肯定会失败。

使用“生成方法存根向导”来编写方法

1. 在“代码和文本编辑器”窗口中,单击run方法中的readDouble方法调用。

随后会在readDouble的第一个字母(\下方显示一个小的下划线图标。将鼠标指针移至字母\,会自动出现一个图标。将鼠标指针悬停在这个图标上方,会显示一条工具提示:“用于生成方法存根的选项(Shift + Alt + F10)”,并提供了一个下拉菜单。单击下拉菜单,就会看到一个选项:生成\中的\的方法存根。

2. 单击“生成\中的\的方法存根”选项。

随后,“生成方法存根向导”会检查对readDouble方法的调用,判断参数类型和返回值,并生成一个具有默认实现的方法,如下所示: private double readDouble(string p) { throw new Exception(\ }

新方法是使用一个private限定符来创建的。方法主体目前只是掷出一个异常。我们将在下一步将主体替换成自己的语句。

3. 从readDouble方法中删除throw new Exception(?);语句,将它替换成以下代码行: Console.Write(p);

string line = Console.ReadLine(); return double.Parse(line);

上述代码块会将变量p中的字符串输出到屏幕。该变量是调用方法是传递的字符串参数,其中包含提示用户输入日费率的一条消息。用户输入一个值,该值将通过ReadLine方法读入一个字符串中,并通过double.Parse方法转换成一个double值。结果将作为方法调用的返回值传回。

注意 ReadLine方法是与WriteLine配套的一个方法,它从键盘读取用户直到按回车键之前的输入。用户输入的文本将作为返回值传回。

4. 在run方法中,单击readInt方法调用,按照和前面一样的过程,为readInt方法生成一个方法存根。

readInt方法将使用一个默认的实现来生成。

提示 为了生成一个方法存根,还可以右击一个方法调用,并从弹出菜单中选择“生成方法存根”。

5. 将readInt方法的主体替换成以下语句: Console.Write(p); string line = Console.ReadLine(); return int.Parse(line);

这个代码块和readDouble方法的非常相似。惟一的区别是方法返回一个int值,所以要使用int.Parse方法将字符串转换成整数。

6. 右击run方法中的calculateFee方法调用,选择“生成方法存根”。

随后会生成calculateFee方法:

private object calculateFee(double dailyRate, int noOfDays) { throw new Exception(\}

注意,“生成方法存根向导”使用传入的实参名称来生成形参名称(当然,假如觉得不合适,完全可以更改形参名称)。更让人感兴趣的是方法的返回类型,目前是object。这表明“生成方法存根向导”无法根据当前的上下文来确定方法应该返回什么类型的值。object类型只是意味着一样“东西”,在方法中添加具体的代码时,应该把它修改成自己需要的类型。

7. 修改calculateFee方法的定义,使它返回一个double值:

private double calculateFee (double dailyRate, int noOfDays) { throw new Exception(\}

8. 将calculateFee方法的主体替换成以下语句,它计算两个参数值的乘积来获得需要支付的金额,并返回结果。 return dailyRate * noOfDays;

9. 右击run方法中的writeFee方法调用,选择“生成方法存根”。

随后会生成writeFee方法。注意,“生成方法存根向导”根据calculateFee方法的定义判断出writeFee方法的参数应该是一个double参数。另外,方法调用没有使用一个返回值,所以方法的类型为void: private void writeFee(double p) { ... }

10. 在writeFee方法内部输入以下语句: Console.WriteLine(\

注意 这个版本的WriteLine方法演示了如何利用一个简单的格式字符串。{0}是一个占位符;在求值的时候,它会被字符串之后的表达式(p * 1.1)的值替换掉。

11. 选择“生成”|“生成解决方案”。

提示 如果对语法已经充分熟悉,也可以通过直接在“代码和文本编辑器”窗口中输入的方式来编写方法。并非一定要使用“生成方法存根”选项。

重构代码

Visual Studio 2005非常有用的一项特性就是对代码进行重构。某些时候,我们需要在应用程序的多个位置写相同的(或者非常相似的)代码。在这种情况下,可以选定刚刚输入的代码块,然后从菜单栏中选择“重构”|“提取方法”。随后会出现“提取方法”对话框,提示你输入一个新方法的名称,该方法将用于包含你刚才输入的代码。请输入方法名,并单击“确定”。随后,系统将创建这个方法,并将你刚才输入的代码转移到其中,刚才输入的代码则被替换成对该方法的一个调用。“提取方法”还具有一定的智能,可以判断方法是否应该获取任何参数和返回值。


Visual Studio 2024快速入门.doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:信息安全前3套答案解析

相关阅读
本类排行
× 游客快捷下载通道(下载后可以自由复制和排版)

下载本文档需要支付 7

支付方式:

开通VIP包月会员 特价:29元/月

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:xuecool-com QQ:370150219