Звоните по ссылке, стоимости и имени

Я пытаюсь понять концептуальную разницу между вызовом по ссылке, значению и имени.

Итак, у меня есть следующий псевдокод:

foo(a, b, c)
{
   b =b++;
   a = a++;
   c = a + b*10
}

X=1;
Y=2;
Z=3;
foo(X, Y+2, Z);

Какие's X, Y и Z после вызова foo, если a, b и c - все вызовы по ссылке? если a, b и c являются вызовом по значению / результату? если a, b и c являются вызовом по имени?

Другой сценарий: я

X=1;
Y=2;
Z=3;
foo(X, Y+2, X);

Я пытаюсь начать подготовку к предстоящему финалу, и это казалось хорошей проблемой для рассмотрения. Pass-by-name определенно самый чуждый для меня.

Ответы на вопрос(5)

Ваш ответ на вопрос