Incrementando um opcional implicitamente desembrulhado
Declaro um opcional implicitamente desembrulhado como:
var numberOfRows: Int!
e inicialize-o no init:
numberOfRows = 25
Mais tarde, preciso diminuí-lo um para escrever:
numberOfRows--
mas isso não compila. A mensagem de erro informa que o operador de decremento não pode ser aplicado a um opcional implicitamente desembrulhado. Com um pouco de experimentação, acho que o seguinte compila sem erro:
numberOfRows!--
Eu gostaria de entender isso. Qual é a explicação para o que parece ser o '!' Extra?