Kitaplar / Yöntem Dil Başvurusu / 6. Alt programlar
6. Alt programlar
altprogram: ('prosedür' | 'fonksiyon' | 'kurucu') [AD '.'] AD
[parametreler] [':' tip] direktif*
bildirim* blok
parametreler: '(' [parametre_grubu ((';' | ',') parametre_grubu)*] ')'
parametre_grubu: ['değişken' | 'sabit'] ','.AD+ [':' tip] ['=' ifade]prosedür değer döndürmez, fonksiyon döndürür. Alt programların kendi sabit, değişken, tip bölümleri ve iç içe alt programları olabilir.
Sonuç
Bir fonksiyonun sonucu iki yoldan verilir: dön ifade ile ya da sonuç adlı örtük değişkene atayarak. sonuç, dönüş tipinin başlangıç değeriyle başlar; fonksiyon dön yazılmadan biterse sonuç’un değeri döner.
fonksiyon Topla(a, b: tamsayı): tamsayı
başla
sonuç := a + b
bitirParametreler
| Yazım | Aktarım |
|---|---|
a: tamsayı |
Değerle; liste, sözlük ve nesnelerde aynı nesne paylaşılır |
değişken a: tamsayı |
Referansla; alt programdaki atama çağıranın değişkenini değiştirir |
sabit a: tamsayı |
Değerle; sözcük belgeleme amaçlıdır |
b: tamsayı = 10 |
Varsayılan değerli; çağrıda yazılmayabilir |
Tipi yazılmayan parametre her tipte değer alır. Parametre grupları ; ya da , ile ayrılır. değişken parametreye yalnızca bir değişken, alan ya da dizin verilebilir. Eksik ya da fazla argüman hata verir.
Direktifler
Başlığın ardından yazılabilir: sanal, ezer, soyut, ileri, aşırı, statik. ileri, gövdesi daha sonra yazılacak bir alt programı önceden bildirir. soyut, gövdesi olmayan bir metodu bildirir; çağrılırsa hata verir. Diğerleri ayrıştırılır ama davranışı değiştirmez: bütün metodlar zaten sanaldır.
Özyineleme ve iç içe alt programlar
Alt programlar kendilerini çağırabilir. İçteki bir alt program, dıştakinin değişkenlerini görür ve değiştirebilir.