В следующем коде:Почему функция всегда относится к одному конкретному параметру?
int sum(int a=40, int b=20)
{
int result;
result = a + b;
return (result);
}
int main()
{
int a = 100;
int b = 200;
int result;
result = sum(a, b);
cout << "Total value is :" << result << endl;
result = sum(a);
cout << "Total value is :" << result << endl;
return 0;
}
Это производит:
Total value is : 300
Total value is : 120
Почему:
sum(a)
добавить (интермедиат а) в 2-ом блоке к (INT б) в 1-м блоке?
Im confused, почему значение (b) в 1-м блоке используется в (sum (a)), но значение (a) в 1-м блоке игнорируется.
Uhm ... вы должны получить начальный учебник и некоторую информацию о том, какие параметры по умолчанию и как они работают. Я не могу понять, что вас беспокоит, так это то, что имена аргументов функции и имена в «main» одинаковы? вы можете переименовать аргументы функции в 'x' и' y' и посмотреть, не позволяет ли это путать? –
«Почему функция всегда относится к одному конкретному параметру?» Что это значит? – juanchopanza
@ DavidRodríguez - dribeas Я использую TutorialsPoint, онлайн-руководство для C++ и Im в разделе «Параметры по умолчанию для параметров». – OpenTheCSV