C# Language
Kommentarer och regioner
Sök…
kommentarer
Att använda kommentarer i dina projekt är ett praktiskt sätt att lämna förklaringar till dina designval och bör syfta till att göra ditt (eller någon annans) liv lättare när du underhåller eller lägger till koden.
Det finns två sätt att lägga till en kommentar till din kod.
Kommentarer med en rad
All text som placeras efter //
kommer att behandlas som en kommentar.
public class Program
{
// This is the entry point of my program.
public static void Main()
{
// Prints a message to the console. - This is a comment!
System.Console.WriteLine("Hello, World!");
// System.Console.WriteLine("Hello, World again!"); // You can even comment out code.
System.Console.ReadLine();
}
}
Flera linjer eller avgränsade kommentarer
All text mellan /*
och */
kommer att behandlas som en kommentar.
public class Program
{
public static void Main()
{
/*
This is a multi line comment
it will be ignored by the compiler.
*/
System.Console.WriteLine("Hello, World!");
// It's also possible to make an inline comment with /* */
// although it's rarely used in practice
System.Console.WriteLine(/* Inline comment */ "Hello, World!");
System.Console.ReadLine();
}
}
regioner
En region är ett hopfällbart kodblock som kan hjälpa till att läsa och organisera din kod.
OBS: StyleCops regel SA1124 DoNotUseRegions avskräcker användningen av regioner. De är vanligtvis ett tecken på dåligt organiserad kod, eftersom C # innehåller delklasser och andra funktioner som gör regioner föråldrade.
Du kan använda regioner på följande sätt:
class Program
{
#region Application entry point
static void Main(string[] args)
{
PrintHelloWorld();
System.Console.ReadLine();
}
#endregion
#region My method
private static void PrintHelloWorld()
{
System.Console.WriteLine("Hello, World!");
}
#endregion
}
När koden ovan visas i en IDE kommer du att kunna kollapsa och utöka koden med symbolerna + och -.
Expanderat
Kollapsade
Dokumentationskommentarer
XML-dokumentationskommentarer kan användas för att tillhandahålla API-dokumentation som enkelt kan bearbetas med verktyg:
/// <summary>
/// A helper class for validating method arguments.
/// </summary>
public static class Precondition
{
/// <summary>
/// Throws an <see cref="ArgumentOutOfRangeException"/> with the parameter
/// name set to <c>paramName</c> if <c>value</c> does not satisfy the
/// <c>predicate</c> specified.
/// </summary>
/// <typeparam name="T">
/// The type of the argument checked
/// </typeparam>
/// <param name="value">
/// The argument to be checked
/// </param>
/// <param name="predicate">
/// The predicate the value is required to satisfy
/// </param>
/// <param name="paramName">
/// The parameter name to be passed to the
/// <see cref="ArgumentOutOfRangeException"/>.
/// </param>
/// <returns>The value specified</returns>
public static T Satisfies<T>(T value, Func<T, bool> predicate, string paramName)
{
if (!predicate(value))
throw new ArgumentOutOfRangeException(paramName);
return value;
}
}
Dokumentation hämtas direkt av IntelliSense: