Français
Befehlssatz et Aider

Sprachelement: proc

 
proc nom( [ paramètre, [ ...

défini une Procédure/ nommé nom et pour ses (optionalen) paramètre qui Namen qui Variablen.

Prozeduren peut Werte aller Variablentypen (einschließlich Arrays) per return zurückliefern.

Prozeduren peut Über- et Unterladen volonté: paramètre doit pas à une Proc transfert volonté, aussi ensuite pas, si quelle défini sommes. Übergibt on à une Proc z.B. seulement qui paramètre a et b statt aussi c, ensuite ist c dans qui Proc défini mais hat la valeur zéro. So peux on aussi dedans einer Proc erkennen, si un paramètre transfert wurde ou bien pas. une Proc sans Retour liefert toujours zéro. Hinweis: zéro ist pas juste 0!

dans Infinity-Profan gibt es aussi Procs dans Procs, qui inneren Procs sommes seulement dans qui Elternproc bekannt.

comment chez XProfan et XPSE avec nProcs ist es dans Infinity-Profan égal, si Procs am Programmkopf ou bien Fuß défini volonté, là qui Kompilierer de toute façon den Voir le texte source umsortiert et qui réellement verwendeten Funktionen à qui passenden Stelle des Quelltextes verknüpft. So peux on sich dessus im Programmkopf sur den réel Voir le texte source/ le bout konzentrieren et benötigte Procs am Fuß enlever.

qui Beschränkung qui Nombre de übergebenen paramètre liegt theoretisch chez 9100, cependant devrait so viele paramètre aucun Proc transfert volonté um Speicherprobleme trop vermeiden.

Parameterwerte volonté byValue transfert, byRef pour Arrays avec vorangestelltem @ avant chaque Parameternamen. sur paramètre, qui pas vom Typ Array transfert volonté, hat @ keinen Einfluss, cependant wird qui Prüfung pour cette paramètre sur une Array-Kopie beim mettons des @-Zeichens abgeschaltet. chez Funktionen, chez denen es sur höchste Geschwindigkeit ankommt, ist alors une Optimierung per @ pour jeden paramètre avec einzubeziehen.

Hinweis: aiguille sur une Proc per @Procname

Beispiele:
proc meineProc(a,b,c)

    /// ...
    /// return

endproc


Ebenso - dank Space-Operator - einfachere Syntax possible:
proc meineProc a b c

    /// ...
    /// return

endproc


chez qui paramètre-définition peux aussi juste un Vorwert transfert volonté, un Wert qui genutzt volonté soll si qui paramètre pas avec transfert wurde:
proc test(a,b,c=50)

    return c

endproc

imprimer test()// gibt 50 aus

Selbe:
proc test a b c=50

    return c

endproc

imprimer test()// gibt 50 aus

cela allez aussi:

Selbe:

Hinweis zur Performance:

ist plus rapide comme:

weil pour alle paramètre qui Prüfung sur un Array wegfällt, dessen données ggf. pour qui Proc dupliziert würden.

Keywords: Prozeduren, Funktionen

proc
endproc
 
14.02.2015  
 




HofK
comment ist qui Art qui Parameterübergabe vorgesehen?

seulement call by value? mais chez arrays?
 
10.03.2015  
 



chez Arrays et Procs qui référence, andernfalls qui Wert.
 
11.03.2015  
 




HofK
OK, peux on chez besoin aussi einelementiges array a transfert, ensuite mais a[0] toujours "mitschleppen".

quoi spricht (interne?) vers
proc beispiel(var a, var b, c, d)
zur Übergabe "by reference"?
 
12.03.2015  
 



Habe là une concept:

si Du sur une variable byref zugreifen veux, ensuite deklariere vous
doch simple pas dans qui paramètre-Beschreibung.

cela var dans qui Parameterbeschreibung pourrait redundant verstanden
volonté et ist imho pas eineindeutig, ensuite plutôt byref a, byref b,
ou bien C-Style &a, &b...

cela peux je naturellement einbauen, mais je halte es pour Doppelgemoppel
à cause de "Idee".
 
12.03.2015  
 




HofK
Pour un einzeln betrachtetes Programme nehme je aussi globale Variablen dans qui Procédure.

si je mir mais Prozeduren comme eigene "Features" zur Manipulation aussi de Variablen schreibe, qui je dans verschiedenen Programmen einsetzen voudrais, gibt es un Problem avec den Bezeichnern. Einmal est qui Variable etwa meineSpezialzeit, dans einem anderen Programme à cause de qui inneren Systematik mais x_time. ensuite devrait on qui globalen Variablen dans qui Procédure extra débaptiser.

on sollte sich qui dans qui Procédure benutzten globalen Variablen aussi extra irgendwie dokumentieren, sonst übersieht on léger quelque chose. comme paramètre avec z.B. proc bsp(ref a, ref b, c, d) vous êtes dagegen deutlich sichtbar. (chez GFA était es autrefois "doppelt" var)

dans dem Zusammenhang muss on mais sûrement aussi qui Namensräume chez Include (siehe XProfan) betrachten. Ist alles plutôt aucun Anfängerproblematik, plus quoi pour AndroidProfanXtended.
 
12.03.2015  
 



oui cela verstehe je, werde solch Syntax ensuite pour plus tard Versionen
umsetzen. je trouve cela "ref" pas mal, so volonté wir cela wohl
. Assurez-
 
13.03.2015  
 



Ebenso - dank Space-Operator - einfachere Syntax possible:
proc meineProc a b c

    /// ...
    /// return

endproc

 
24.05.2015  
 



chez qui paramètre-définition peux aussi juste un Vorwert transfert volonté, un Wert qui genutzt volonté soll si qui paramètre pas avec transfert wurde:
proc test(a,b,c=50)

    return c

endproc

imprimer test()// gibt 50 aus

Selbe:
proc test a b c=50

    return c

endproc

imprimer test()// gibt 50 aus

cela allez aussi:

Selbe:
 
24.05.2015  
 



Proc-paramètre Typ Array Übergabe eh bien byVal statt byRef:  [...] 
 
11.01.2016  
 



répondre


Topictitle, max. 100 marque.
 

Systemprofile:

ne...aucune Systemprofil angelegt. [anlegen]

XProfan:

 Posting  Font  Smilies  ▼ 

s'il te plaît s'inscrire um une Beitrag trop verfassen.
 

Options du sujet

12.082 Views

Untitledvor 0 min.
Sven Bader04.08.2021
Micha1233418.05.2016
Michael W.09.04.2016
HofK08.04.2016
plus...

Themeninformationen

cet Thema hat 2 participant:

iF (7x)
HofK (3x)


Admins  |  AGB  |  Applications  |  Auteurs  |  Chat  |  protection des données  |  Télécharger  |  Entrance  |  Aider  |  Merchantportal  |  Empreinte  |  Mart  |  Interfaces  |  SDK  |  Services  |  Jeux  |  cherche  |  Support

un projet aller XProfaner, qui il y a!


Mon XProfan
Privé Nouvelles
Eigenes Ablageforum
Sujets-La liste de voeux
Eigene Posts
Eigene Sujets
Zwischenablage
Annuler
 Deutsch English Français Español Italia
Traductions

protection des données


Wir verwenden Cookies seulement comme Session-Cookies à cause de qui technischen Notwendigkeit et chez uns gibt es aucun Cookies de Drittanbietern.

si du ici sur unsere Webseite klickst ou bien navigierst, stimmst du unserer Erfassung de Informationen dans unseren Cookies sur XProfan.Net trop.

Weitere Informationen trop unseren Cookies et en supplément, comment du qui Kontrolle par-dessus behältst, findest du dans unserer nachfolgenden Datenschutzerklärung.


d'accordDatenschutzerklärung
je voudrais keinen Cookie