c#用委托写一个两种语言的打招呼方法
时间: 2024-09-09 10:16:09 浏览: 74
C#使用委托(delegate)实现在两个form之间传递数据的方法
在C#中,委托是一种类型,它可以引用具有特定参数列表和返回类型的方法。使用委托,我们可以定义一个方法,该方法可以根据传递给它的委托执行不同的逻辑,这在实现多语言打招呼的方法时非常有用。
下面是一个使用委托实现两种语言打招呼方法的示例:
```csharp
using System;
namespace DelegatesExample
{
// 定义委托类型
public delegate void GreetingDelegate(string name);
class Program
{
// 实现中文打招呼的方法
static void GreetInChinese(string name)
{
Console.WriteLine("你好," + name + "!");
}
// 实现英文打招呼的方法
static void GreetInEnglish(string name)
{
Console.WriteLine("Hello, " + name + "!");
}
static void Main(string[] args)
{
// 创建委托实例
GreetingDelegate greet;
// 选择使用中文打招呼
greet = new GreetingDelegate(GreetInChinese);
greet("小明");
// 更换委托引用的打招呼方法为英文
greet = new GreetingDelegate(GreetInEnglish);
greet("Xiao Ming");
Console.ReadKey();
}
}
}
```
在上述代码中,首先定义了一个委托类型`GreetingDelegate`,它接受一个`string`类型的参数并返回`void`。然后,定义了两个使用该委托类型的方法:`GreetInChinese`和`GreetInEnglish`。在`Main`方法中,我们创建了委托的实例,并先后指向这两个不同的打招呼方法,并传递一个名字参数。
运行这段代码,程序会先打印出中文的问候语,然后是英文的问候语。
阅读全文