CodeIterationStatement 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 for o un ciclo attraverso un blocco di istruzioni, usando un'espressione di test come condizione per continuare il ciclo.
public ref class CodeIterationStatement : System::CodeDom::CodeStatement
public class CodeIterationStatement : System.CodeDom.CodeStatement
[System.Runtime.InteropServices.ClassInterface(System.Runtime.InteropServices.ClassInterfaceType.AutoDispatch)]
[System.Runtime.InteropServices.ComVisible(true)]
[System.Serializable]
public class CodeIterationStatement : System.CodeDom.CodeStatement
type CodeIterationStatement = class
inherit CodeStatement
[<System.Runtime.InteropServices.ClassInterface(System.Runtime.InteropServices.ClassInterfaceType.AutoDispatch)>]
[<System.Runtime.InteropServices.ComVisible(true)>]
[<System.Serializable>]
type CodeIterationStatement = class
inherit CodeStatement
Public Class CodeIterationStatement
Inherits CodeStatement
- Ereditarietà
- Attributi
Esempio
In questo esempio viene illustrato l'utilizzo di per CodeIterationStatement rappresentare un for ciclo.
// Declares and initializes an integer variable named testInt.
CodeVariableDeclarationStatement testInt = new CodeVariableDeclarationStatement(typeof(int), "testInt", new CodePrimitiveExpression(0) );
// Creates a for loop that sets testInt to 0 and continues incrementing testInt by 1 each loop until testInt is not less than 10.
CodeIterationStatement forLoop = new CodeIterationStatement(
// initStatement parameter for pre-loop initialization.
new CodeAssignStatement( new CodeVariableReferenceExpression("testInt"), new CodePrimitiveExpression(1) ),
// testExpression parameter to test for continuation condition.
new CodeBinaryOperatorExpression( new CodeVariableReferenceExpression("testInt"),
CodeBinaryOperatorType.LessThan, new CodePrimitiveExpression(10) ),
// incrementStatement parameter indicates statement to execute after each iteration.
new CodeAssignStatement( new CodeVariableReferenceExpression("testInt"), new CodeBinaryOperatorExpression(
new CodeVariableReferenceExpression("testInt"), CodeBinaryOperatorType.Add, new CodePrimitiveExpression(1) )),
// statements parameter contains the statements to execute during each interation of the loop.
// Each loop iteration the value of the integer is output using the Console.WriteLine method.
new CodeStatement[] { new CodeExpressionStatement( new CodeMethodInvokeExpression( new CodeMethodReferenceExpression(
new CodeTypeReferenceExpression("Console"), "WriteLine" ), new CodeMethodInvokeExpression(
new CodeVariableReferenceExpression("testInt"), "ToString" ) ) ) } );
// A C# code generator produces the following source code for the preceeding example code:
// int testInt = 0;
// for (testInt = 1; (testInt < 10); testInt = (testInt + 1)) {
// Console.WriteLine(testInt.ToString());
' Declares and initializes an integer variable named testInt.
Dim testInt As New CodeVariableDeclarationStatement(GetType(Integer), "testInt", New CodePrimitiveExpression(0))
' Creates a for loop that sets testInt to 0 and continues incrementing testInt by 1 each loop until testInt is not less than 10.
' initStatement parameter for pre-loop initialization.
' testExpression parameter indicates the epxression to test for continuation condition.
' incrementStatement parameter indicates statement to execute after each iteration.
' statements parameter contains the statements to execute during each interation of the loop.
' Each loop iteration the value of the integer is output using the Console.WriteLine method.
Dim forLoop As New CodeIterationStatement( _
New CodeAssignStatement(New CodeVariableReferenceExpression("testInt"), New CodePrimitiveExpression(1)), _
New CodeBinaryOperatorExpression(New CodeVariableReferenceExpression("testInt"), _
CodeBinaryOperatorType.LessThan, New CodePrimitiveExpression(10)), _
New CodeAssignStatement(New CodeVariableReferenceExpression("testInt"), _
New CodeBinaryOperatorExpression(New CodeVariableReferenceExpression("testInt"), _
CodeBinaryOperatorType.Add, New CodePrimitiveExpression(1))), _
New CodeStatement() {New CodeExpressionStatement( _
New CodeMethodInvokeExpression(New CodeMethodReferenceExpression(New CodeTypeReferenceExpression("Console"), "WriteLine"), _
New CodeMethodInvokeExpression(New CodeVariableReferenceExpression("testInt"), "ToString")))})
' A Visual Basic code generator produces the following source code for the preceeding example code:
' Dim testInt As Integer = 0
' testInt = 1
' Do While (testInt < 10)
' Console.WriteLine(testInt.ToString)
' testInt = (testInt + 1)
Commenti
Un CodeIterationStatement oggetto può rappresentare un ciclo o while un for ciclo.
La InitStatement proprietà specifica l'istruzione da eseguire prima della prima iterazione del ciclo. La TestExpression proprietà specifica l'espressione di continuazione del ciclo, che deve restituire true alla fine di ogni iterazione del ciclo per iniziare un'altra iterazione. La IncrementStatement proprietà specifica l'istruzione da eseguire alla fine di ogni iterazione del ciclo. La Statements proprietà specifica la raccolta di istruzioni da eseguire all'interno del ciclo.
Costruttori
| Nome | Descrizione |
|---|---|
| CodeIterationStatement() |
Inizializza una nuova istanza della classe CodeIterationStatement. |
| CodeIterationStatement(CodeStatement, CodeExpression, CodeStatement, CodeStatement[]) |
Inizializza una nuova istanza della CodeIterationStatement classe utilizzando i parametri specificati. |
Proprietà
| Nome | Descrizione |
|---|---|
| EndDirectives |
Ottiene un CodeDirectiveCollection oggetto che contiene direttive end. (Ereditato da CodeStatement) |
| IncrementStatement |
Ottiene o imposta l'istruzione chiamata dopo ogni ciclo del ciclo. |
| InitStatement |
Ottiene o imposta l'istruzione di inizializzazione del ciclo. |
| 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) |
| Statements |
Ottiene la raccolta di istruzioni da eseguire all'interno del ciclo. |
| TestExpression |
Ottiene o imposta l'espressione da testare come condizione che continua il ciclo. |
| 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) |