Csharp/C Sharp/Language Basics/Alias

Материал из .Net Framework эксперт
Перейти к: навигация, поиск

Demonstrate a using alias

<source lang="csharp"> // Demonstrate a using alias.

using System;

// Create an alias for Counter.CountDown. using Count = Counter.CountDown;

// Declare a namespace for counters. namespace Counter {

 // A simple countdown counter. 
 class CountDown { 
   int val; 

   public CountDown(int n) { 
     val = n; 
   } 

   public void reset(int n) { 
     val = n; 
   } 

   public int count() { 
     if(val > 0) return val--; 
     else return 0; 
   } 
 } 

}

public class NSDemo4 {

 public static void Main() { 
   // Here, Count is used as a name for Counter.CountDown. 
   Count cd1 = new Count(10); 
   int i; 

   do { 
     i = cd1.count(); 
     Console.Write(i + " "); 
   } while(i > 0); 
   Console.WriteLine(); 

   Count cd2 = new Count(20); 

   do { 
     i = cd2.count(); 
     Console.Write(i + " "); 
   } while(i > 0); 
   Console.WriteLine(); 

   cd2.reset(4); 
   do { 
     i = cd2.count(); 
     Console.Write(i + " "); 
   } while(i > 0); 
   Console.WriteLine(); 
 } 

}

      </source>


Using an alias to resolve ambiguity

<source lang="csharp"> /* C# Programming Tips & Techniques by Charles Wright, Kris Jamsa Publisher: Osborne/McGraw-Hill (December 28, 2001) ISBN: 0072193794

  • /

// Alias.cs -- demonstrates using an alias to resolve ambiguity // // Compile this program with the following command line: // C:>csc Alias.cs using System; using MsgBox = System.Windows.Forms.MessageBox; using System.Timers; namespace nsNamespaces {

   public class Alias
   {
       static Timer timer;
       static public void Main ()
       {
           // Create the timer object.
           timer = new Timer (2000);
           
           // This is a one-shot timer. Set auto reset to false
           timer.AutoReset = false;
           
           // Assign the event handler method.
           timer.Elapsed += new ElapsedEventHandler(ProcessTimerEvent);
           
           // Start the timer.
           timer.Start ();
           
           // Wait for the timeout to occur.
           MsgBox.Show ("Waiting for timer to expire", "Text");
       }
       // Timer event handler.
       private static void ProcessTimerEvent (Object obj, ElapsedEventArgs e)
       {
           MsgBox.Show ("The timer has expired. Press \"OK\" " +
                        " to terminate the program",
                        "Timer Expired");
           timer.Close ();
           Environment.Exit (0);
       }
   }

}


      </source>