Sdílet prostřednictvím


CodeIterationStatement Třída

Definice

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
CodeIterationStatement
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)

Platí pro