主题:求助~
#region Using directives
using System;
using System.Collections.Generic;
using System.Text;
using System.Diagnostics;
#endregion
namespace ConsoleApplication1
{
class Program
{
static string[] eTypes = {"none", "simple", "index", "nested index"};
static void Main(string[] args)
{
foreach (string eType in eTypes)
{
try
{
Console.WriteLine("Main try block reached.");
Console.WriteLine("ThrowException (\"{0}\") called", eType);
ThrowException(eType);
Console.WriteLine("Main() try block continues.");
}
catch (System.IndexOutOfRangeException e)
{
Console.WriteLine("Main() System.IndexOutOfRangeException catch" + "block reached. Message:\n\"{0}\"", e.Message);
}
catch
{
Console.WriteLine("Main() general catch block reached.");
}
finally
{
Console.WriteLine("Main() finally block reached.");
}
Console.WriteLine();
}
Console.ReadKey();
}
static void ThrowException(string exceptionType)
{
Console.WriteLine("ThrowException(\"{0}\") reached.", exceptionType);
switch (exceptionType)
{
case "none":
Console.WriteLine("Not throwing an exception.");
break;
case "simple" :
Console.WriteLine("Throwing System.Exception.");
throw (new System.Exception());
break;
case "index" :
Console.WriteLine("Throwing System.IndexOutOfRangeException.");
eTypes[4] = "error";
break;
case "nested index" :
try
{
Console.WriteLine("ThrowException(\"nested index\")" + "ry block reached.");
Console.WriteLine("ThrowException(\"index\") called.");
ThrowException("index");
}
catch
{
Console.WriteLine("ThrowException (\"nested index\" general" + "catch block reached.");
}
finally
{
Console.WriteLine("ThrowException(\"nested index\") finally" + "block reached.");
}
}
}
}
}
。。。请问。。。这代码错在哪里
using System;
using System.Collections.Generic;
using System.Text;
using System.Diagnostics;
#endregion
namespace ConsoleApplication1
{
class Program
{
static string[] eTypes = {"none", "simple", "index", "nested index"};
static void Main(string[] args)
{
foreach (string eType in eTypes)
{
try
{
Console.WriteLine("Main try block reached.");
Console.WriteLine("ThrowException (\"{0}\") called", eType);
ThrowException(eType);
Console.WriteLine("Main() try block continues.");
}
catch (System.IndexOutOfRangeException e)
{
Console.WriteLine("Main() System.IndexOutOfRangeException catch" + "block reached. Message:\n\"{0}\"", e.Message);
}
catch
{
Console.WriteLine("Main() general catch block reached.");
}
finally
{
Console.WriteLine("Main() finally block reached.");
}
Console.WriteLine();
}
Console.ReadKey();
}
static void ThrowException(string exceptionType)
{
Console.WriteLine("ThrowException(\"{0}\") reached.", exceptionType);
switch (exceptionType)
{
case "none":
Console.WriteLine("Not throwing an exception.");
break;
case "simple" :
Console.WriteLine("Throwing System.Exception.");
throw (new System.Exception());
break;
case "index" :
Console.WriteLine("Throwing System.IndexOutOfRangeException.");
eTypes[4] = "error";
break;
case "nested index" :
try
{
Console.WriteLine("ThrowException(\"nested index\")" + "ry block reached.");
Console.WriteLine("ThrowException(\"index\") called.");
ThrowException("index");
}
catch
{
Console.WriteLine("ThrowException (\"nested index\" general" + "catch block reached.");
}
finally
{
Console.WriteLine("ThrowException(\"nested index\") finally" + "block reached.");
}
}
}
}
}
。。。请问。。。这代码错在哪里