Этот код не скомпилируется, потому что функция
printDouble
не знает, что такое идентификатор
num
. Вы можете попробовать определить
num
как переменную внутри функции
printDouble()
:
void printDouble()
{
int num{}; // мы добавили эту строку
std::cout << num << " doubled is: " << num * 2 << '\n';
}
Хотя это устраняет ошибку компиляции и делает программу пригодной для компиляции, программа по-прежнему работает некорректно (всегда выводит «0 doubled is: 0»). Суть проблемы здесь в том, что у функции printDouble
нет способа получить доступ к значению, введенному пользователем.
Нам нужен способ передать значение переменной num
в функцию printDouble
, чтобы printDouble
могла использовать это значение в теле функции.