Vue anonyme (langage)

De Wiki1000
(Différences entre les versions)
Ligne 2 : Ligne 2 :
  
 
Les vues anonymes sont des [[Vue locale (langage)|vues locales]] déclarées directement au niveau d'une instruction.
 
Les vues anonymes sont des [[Vue locale (langage)|vues locales]] déclarées directement au niveau d'une instruction.
 
Exemple :
 
  
 
<source lang="delphi">
 
<source lang="delphi">
Ligne 23 : Ligne 21 :
  
 
La portée de la variable de boucle est limitée à l'instruction où elle est définie, si vous avez besoin d'une variable portant sur l'ensemble de la procédure utilisez un type [[Vue locale (langage)|vue locale]].
 
La portée de la variable de boucle est limitée à l'instruction où elle est définie, si vous avez besoin d'une variable portant sur l'ensemble de la procédure utilisez un type [[Vue locale (langage)|vue locale]].
 +
 +
Exemple d'une vue anonyme avec agrégat :
 +
 +
<source lang="delphi">
 +
function foo(const S:string):Integer;
 +
begin
 +
  Result := 0;
 +
  foreach var inst in viewof(ClassB)
 +
    unCode:string = unCodeB primary;
 +
    sumEntier:Integer = sum(unEntierB);
 +
  end.CreateCursorWhere('''','''',true,[]) do
 +
  begin
 +
    Result := Result+inst.sumEntier;
 +
  end;
 +
end;
 +
</source>
  
 
Voir aussi :
 
Voir aussi :

Version du 2 septembre 2011 à 17:26

versiontahoe-32x32.png

Les vues anonymes sont des vues locales déclarées directement au niveau d'une instruction.

function foo(const S:string):Integer;
begin
  Result := 0;
  foreach var inst in viewof(ClassA)
    newCode:string;
    unCode:string = unCodeA;
    unEntier:Integer = refB.unEntierB;
  end.CreateCursorWhere('''','''',true,[]) do
   begin
     Result := Result + inst.unEntier;
   end;
end;

La variable de boucle doit être déclarée dans l'instruction sans indication de type, elle prendra le type par défaut de l'énumérateur qui est dans ce cas le type de la vue anonyme.

La portée de la variable de boucle est limitée à l'instruction où elle est définie, si vous avez besoin d'une variable portant sur l'ensemble de la procédure utilisez un type vue locale.

Exemple d'une vue anonyme avec agrégat :

function foo(const S:string):Integer;
begin
  Result := 0;
  foreach var inst in viewof(ClassB)
    unCode:string = unCodeB primary;
    sumEntier:Integer = sum(unEntierB);
  end.CreateCursorWhere('''','''',true,[]) do
   begin
     Result := Result+inst.sumEntier;
   end;
end;

Voir aussi :





Whos here now:   Members 0   Guests 0   Bots & Crawlers 1
 
Outils personnels