Mailinglisten-Archive |
>> Sorry: ja ich komme aus der C-Welt und Pointer sind mir derart
>> ins Blut =FCbergegangen, dass ich wie der Ochs vor'm Berg stehe.
>oops,
>gibt es keine Array's in 'C' ... <wunder>
Doch, vielleicht nochmal pr=E4ziser:
function traverse ($arr, $func)
soll zwar den Baum (rekursiv) durchwandern, wei=DF aber selber nix =FCbe=
r die
Funktionsweise der Routine in $func, die es bei jedem Element aufrufen
soll. Es ist also eine generische Funktion, die einen Funktionszeiger al=
s
zweiten Parameter erh=E4lt, so wie array=5Fwalk in php. Im C-Code sieht =
das
ca. so aus:
int sum (int a, int b) {
return a+b;
}
void mul (int a, int b) {
return a*b;
}
void traverse (int *arr, (func)(int a, int b)) {
for (...) {
...
(func) (c, d);
...
}
}
Dann kann man
traverse (my=5Farray, sum);
oder
traverse (my=5Farray, mul);
aufrufen, an traverse muss man nix =E4ndern!
>Haste mal'n Bleistift...
>Hamm wa:
Danke, aber das war's nicht wirklich...
>Das Script muss aber VOR dem TimeOut fertig werden, gell... ;-)
Besser w=E4r das...
--
Oliver Michalak
www.werk01.de / omich_(at)_werk01.de / 0(049)177 - 75 75 393
php::bar PHP Wiki - Listenarchive