programming-examples/c-sharp/Delegates/C# Program to Implement Principles of Delegates..txt
2019-11-15 12:59:38 +01:00

46 lines
1.2 KiB
Plaintext

/*
* C# Program to Implement Principles of Delegates
*/
using System;
class Program
{
delegate string UppercaseDelegate(string input);
static string UppercaseFirst(string input)
{
char[] buffer = input.ToCharArray();
buffer[0] = char.ToUpper(buffer[0]);
return new string(buffer);
}
static string UppercaseLast(string input)
{
char[] buffer = input.ToCharArray();
buffer[buffer.Length - 1] = char.ToUpper(buffer[buffer.Length - 1]);
return new string(buffer);
}
static string UppercaseAll(string input)
{
return input.ToUpper();
}
static void WriteOutput(string input, UppercaseDelegate del)
{
Console.WriteLine("Input String: {0}", input);
Console.WriteLine("Output String: {0}", del(input));
}
static void Main()
{
WriteOutput("tom ", new UppercaseDelegate(UppercaseFirst));
WriteOutput("tom", new UppercaseDelegate(UppercaseLast));
WriteOutput("tom", new UppercaseDelegate(UppercaseAll));
Console.ReadLine();
}
}
/*
Input String: tom
Output String: Tom
Input String: tom
Output String: toM
Input String: tom
Output String: TOM