CodeIterationStatement Třída
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
for Představuje příkaz nebo smyčku procházející blokem příkazů pomocí testovacího výrazu jako podmínky pro pokračování ve smyčce.
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
- Dědičnost
- Atributy
Příklady
Tento příklad ukazuje použití smyčky CodeIterationStatement k reprezentaci smyčky for .
// 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)
Poznámky
A CodeIterationStatement může představovat smyčku nebo while smyčkufor.
Vlastnost InitStatement určuje příkaz, který se má provést před první iterací smyčky. Vlastnost TestExpression určuje výraz pokračování smyčky, který se musí vyhodnotit na true konci každé iterace smyčky pro zahájení jiné iterace. Vlastnost IncrementStatement určuje příkaz, který se má provést na konci každé iterace smyčky. Vlastnost Statements určuje kolekci příkazů, které se mají provést v rámci smyčky.
Konstruktory
| Name | Description |
|---|---|
| CodeIterationStatement() |
Inicializuje novou instanci CodeIterationStatement třídy. |
| CodeIterationStatement(CodeStatement, CodeExpression, CodeStatement, CodeStatement[]) |
Inicializuje novou instanci CodeIterationStatement třídy pomocí zadaných parametrů. |
Vlastnosti
| Name | Description |
|---|---|
| EndDirectives |
CodeDirectiveCollection Získá objekt, který obsahuje koncové direktivy. (Zděděno od CodeStatement) |
| IncrementStatement |
Získá nebo nastaví příkaz, který je volána po každém cyklu smyčky. |
| InitStatement |
Získá nebo nastaví inicializační příkaz smyčky. |
| LinePragma |
Získá nebo nastaví řádek, na kterém dojde k příkazu kódu. (Zděděno od CodeStatement) |
| StartDirectives |
CodeDirectiveCollection Získá objekt, který obsahuje direktivy start. (Zděděno od CodeStatement) |
| Statements |
Získá kolekci příkazů, které se mají spustit v rámci smyčky. |
| TestExpression |
Získá nebo nastaví výraz k otestování jako podmínka, která pokračuje ve smyčce. |
| UserData |
Získá uživatelem definovatelná data pro aktuální objekt. (Zděděno od CodeObject) |
Metody
| Name | Description |
|---|---|
| Equals(Object) |
Určuje, zda je zadaný objekt roven aktuálnímu objektu. (Zděděno od Object) |
| GetHashCode() |
Slouží jako výchozí funkce hash. (Zděděno od Object) |
| GetType() |
Získá Type aktuální instance. (Zděděno od Object) |
| MemberwiseClone() |
Vytvoří mělkou kopii aktuálního Object. (Zděděno od Object) |
| ToString() |
Vrátí řetězec, který představuje aktuální objekt. (Zděděno od Object) |