Аргументы передаваемые параметрам функции меняются только внутри функции.
Если аргументом является переменная, а параметр которому передается значение данной переменной является сквозным, то изменение значения этого параметра внутри функции приведет к изменению значения переменной выступившей в роли его аргумента вне функции.
При этом значение параметра меняется напрямую, т е параметр уже не является константой.
Чтобы параметр стал сквозным следует указать ключевое слово inout перед типом параметра.
Перед передаваемой переменной в качестве аргумента при вызове функции следует указать символ &.
var ghj=55
func someFunction5(num5: inout Int){
num5=999
}
someFunction5(num5: &ghj)
print(ghj)//999