Peu profondes & Profondeur de Liaison - Ce que le programme d'impression?
Je ne suis pas sûr de la façon de le faire...
function f1()
{
var x = 10;
function f2(fx)
{
var x;
x = 6;
fx();
};
function f3()
{
print x;
};
f2(f3);
};
Pour chacune de ces deux méthodes de reliure, quel serait le programme d'impression?
A) Peu Profonde De Liaison
B) De Profondeur De Liaison
Merci pour l'aide!
voir here. en un mot: au plus profond de liaison imprime
10
que la liaison de x
a lieu lorsque f2
est appelé, peu profonde de liaison imprime 6
comme x
est lié lorsque f3
(étant un paramètre de la procédure de f2
) est appelée à partir de f2
.OriginalL'auteur Ricky | 2013-03-21
Vous devez vous connecter pour publier un commentaire.
Profonde/superficielle de liaison n'a de sens que si une procédure peut être passé comme argument à une fonction.
comme argument.
la procédure est en fait appelé.
Profond de liaison.
Ici f3() obtient l'environnement de f1() et imprime la valeur de x comme 10 qui est variable locale de f1().
Peu profonde de liaison.
f3() est appelé dans f2() et donc obtient l'environnement de f2() et imprime la valeur de x 6 qui est local à f2()
OriginalL'auteur Mari Ganesh Kumar
• L'environnement de l'instruction d'appel qui édicte la passée sous-programme
(peu de liaison)
• L'environnement de la définition de la passée sous-programme (deep
la liaison).
Dans certains cas, le sous-programme qui déclare un sous-programme passe également que
le sous-programme en tant que paramètre. Dans ces cas, la profondeur de liaison ad hoc de liaison
sont les mêmes.
OriginalL'auteur
Peu profonde de liaison : l'environnement de l'instruction d'appel qui édicte la passée sous-programme
Profondeur de liaison : l'environnement de la définition de la passée sous-programme
Ad hoc de liaison : l'environnement de l'instruction d'appel qui a passé le subproblem comme un paramètre réel
OriginalL'auteur Karunakar