Ссылка-параметр в C++
Изменение обычного параметра не меняет переменную снаружи функции. Можно сделать так, чтобы изменение параметра приводило к изменению переменной снаружи. Для этого параметр объявляют ссылкой. Запишем функцию и выведем переменную после вызова:
#include <iostream>
void func(int& num) {
num = 2;
}
int main() {
int num = 1;
func(num);
std::cout << num << "\n"; // выведет 2
return 0;
}
Исправьте код так, чтобы переменная снаружи функции изменилась.
#include <iostream>
void grow(int value) {
value += 1;
}
int main() {
int value = 1;
grow(value);
std::cout << value << "\n"; // должно вывести 2
return 0;
}
Исправьте код так, чтобы вектор снаружи функции изменился.
#include <iostream>
#include <vector>
void mark(std::vector<int> vec) {
vec[0] = 0;
}
int main() {
std::vector<int> vec = {7, 8, 9};
mark(vec);
std::cout << vec[0] << "\n";
return 0;
}