CodeLabeledStatement Classe
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Rappresenta un'istruzione etichettata o un'etichetta autonoma.
public ref class CodeLabeledStatement : System::CodeDom::CodeStatement
public class CodeLabeledStatement : System.CodeDom.CodeStatement
[System.Runtime.InteropServices.ClassInterface(System.Runtime.InteropServices.ClassInterfaceType.AutoDispatch)]
[System.Runtime.InteropServices.ComVisible(true)]
[System.Serializable]
public class CodeLabeledStatement : System.CodeDom.CodeStatement
type CodeLabeledStatement = class
inherit CodeStatement
[<System.Runtime.InteropServices.ClassInterface(System.Runtime.InteropServices.ClassInterfaceType.AutoDispatch)>]
[<System.Runtime.InteropServices.ComVisible(true)>]
[<System.Serializable>]
type CodeLabeledStatement = class
inherit CodeStatement
Public Class CodeLabeledStatement
Inherits CodeStatement
- Ereditarietà
- Attributi
Esempio
Il codice di esempio seguente illustra l'uso di un CodeGotoStatement oggetto e un oggetto CodeLabeledStatement per reindirizzare il flusso del programma.
// Declares a type to contain the example code.
CodeTypeDeclaration type1 = new CodeTypeDeclaration("Type1");
// Declares an entry point method.
CodeEntryPointMethod entry1 = new CodeEntryPointMethod();
type1.Members.Add( entry1 );
// Adds a goto statement to continue program flow at the "JumpToLabel" label.
CodeGotoStatement goto1 = new CodeGotoStatement("JumpToLabel");
entry1.Statements.Add( goto1 );
// Invokes Console.WriteLine to print "Test Output", which is skipped by the goto statement.
CodeMethodInvokeExpression method1 = new CodeMethodInvokeExpression(
new CodeTypeReferenceExpression("System.Console"), "WriteLine", new CodePrimitiveExpression("Test Output."));
entry1.Statements.Add( method1 );
// Declares a label named "JumpToLabel" associated with a method to output a test string using Console.WriteLine.
CodeMethodInvokeExpression method2 = new CodeMethodInvokeExpression(
new CodeTypeReferenceExpression("System.Console"), "WriteLine", new CodePrimitiveExpression("Output from labeled statement."));
CodeLabeledStatement label1 = new CodeLabeledStatement("JumpToLabel", new CodeExpressionStatement(method2) );
entry1.Statements.Add( label1 );
// A C# code generator produces the following source code for the preceeding example code:
// public class Type1
// {
//
// public static void Main()
// {
// goto JumpToLabel;
// System.Console.WriteLine("Test Output");
// JumpToLabel:
// System.Console.WriteLine("Output from labeled statement.");
// }
// }
' Declares a type to contain the example code.
Dim type1 As New CodeTypeDeclaration("Type1")
' Declares an entry point method.
Dim entry1 As New CodeEntryPointMethod()
type1.Members.Add(entry1)
' Adds a goto statement to continue program flow at the "JumpToLabel" label.
Dim goto1 As New CodeGotoStatement("JumpToLabel")
entry1.Statements.Add(goto1)
' Invokes Console.WriteLine to print "Test Output", which is skipped by the goto statement.
Dim method1 As New CodeMethodInvokeExpression(New CodeTypeReferenceExpression("System.Console"), "WriteLine", New CodePrimitiveExpression("Test Output."))
entry1.Statements.Add(method1)
' Declares a label named "JumpToLabel" associated with a method to output a test string using Console.WriteLine.
Dim method2 As New CodeMethodInvokeExpression(New CodeTypeReferenceExpression("System.Console"), "WriteLine", New CodePrimitiveExpression("Output from labeled statement."))
Dim label1 As New CodeLabeledStatement("JumpToLabel", New CodeExpressionStatement(method2))
entry1.Statements.Add(label1)
' A Visual Basic code generator produces the following source code for the preceeding example code:
' Public Class Type1
'
' Public Shared Sub Main()
' GoTo JumpToLabel
' System.Console.WriteLine("Test Output")
' JumpToLabel:
' System.Console.WriteLine("Output from labeled statement.")
' End Sub
' End Class
Commenti
CodeLabeledStatement rappresenta un'etichetta e, facoltativamente, un'istruzione associata. Un'etichetta può essere usata per indicare la destinazione di un oggetto CodeGotoStatement.
La proprietà Statement è facoltativa. Per creare solo un'etichetta, lasciare la Statement proprietà non inizializzata.
Annotazioni
Non tutti i linguaggi supportano goto istruzioni ed etichette, quindi è necessario verificare se un generatore di codice supporta goto istruzioni ed etichette chiamando il Supports metodo con il GotoStatements flag .
Costruttori
| Nome | Descrizione |
|---|---|
| CodeLabeledStatement() |
Inizializza una nuova istanza della classe CodeLabeledStatement. |
| CodeLabeledStatement(String, CodeStatement) |
Inizializza una nuova istanza della CodeLabeledStatement classe utilizzando il nome e l'istruzione dell'etichetta specificati. |
| CodeLabeledStatement(String) |
Inizializza una nuova istanza della CodeLabeledStatement classe utilizzando il nome dell'etichetta specificato. |
Proprietà
| Nome | Descrizione |
|---|---|
| EndDirectives |
Ottiene un CodeDirectiveCollection oggetto che contiene direttive end. (Ereditato da CodeStatement) |
| Label |
Ottiene o imposta il nome dell'etichetta. |
| LinePragma |
Ottiene o imposta la riga in cui si verifica l'istruzione del codice. (Ereditato da CodeStatement) |
| StartDirectives |
Ottiene un CodeDirectiveCollection oggetto contenente le direttive start. (Ereditato da CodeStatement) |
| Statement |
Ottiene o imposta l'istruzione associata facoltativa. |
| UserData |
Ottiene i dati definibili dall'utente per l'oggetto corrente. (Ereditato da CodeObject) |
Metodi
| Nome | Descrizione |
|---|---|
| Equals(Object) |
Determina se l'oggetto specificato è uguale all'oggetto corrente. (Ereditato da Object) |
| GetHashCode() |
Funge da funzione hash predefinita. (Ereditato da Object) |
| GetType() |
Ottiene il Type dell'istanza corrente. (Ereditato da Object) |
| MemberwiseClone() |
Crea una copia superficiale del Objectcorrente. (Ereditato da Object) |
| ToString() |
Restituisce una stringa che rappresenta l'oggetto corrente. (Ereditato da Object) |