Назад к вопросам
Junior — Middle
84
Каким образом в языке C++ можно передать переменную в функцию: по значению, по ссылке или по указателю?
Компании, где спрашивали
ФГАНУ НИИ
Ответ от нейросети
sobes.tech AI
В C++ переменную можно передать в функцию тремя основными способами:
- По значению — функция получает копию переменной. Изменения внутри функции не влияют на оригинал.
void foo(int x) {
x = 10; // изменение локальной копии
}
- По ссылке — функция получает ссылку на оригинальную переменную. Изменения внутри функции отражаются на исходной переменной.
void foo(int& x) {
x = 10; // изменит оригинал
}
- По указателю — функция получает адрес переменной. Для доступа к значению нужно разыменовывать указатель. Позволяет передавать nullptr и изменять оригинал.
void foo(int* x) {
if (x != nullptr) {
*x = 10; // изменит оригинал
}
}
Выбор способа зависит от задачи: если нужно изменить исходную переменную — лучше использовать ссылку или указатель; если нет — передавайте по значению.