Причина в том, что вы передали числовую переменную по значению не по ссылке. При передаче по значению значение переменной копируется в локальную копию, тогда локальная копия увеличивается, но уничтожается позже после завершения метода. Если вы передаете переменную по ссылке, то адрес переменной передается методу, а исходная переменная изменяется, а не ее копия.
static void increment (ref int num)
{
num++;
}
И тогда вы вызываете этот метод с
increment(ref x);
типа int
это значение и, как и все другие типы значений всегда передаются по значению, если ключевое слово ref
не используется. В отличие от них, типы классов передаются как ссылки, а их изменение в методах изменяет исходный объект.
обратитесь к основному учебнику –
попробуйте инициализировать вне метода – Kiran
Хотя я потерял много репутации, Я рад получить ответ! – user2049259