Macht der Parameter inout / var einen Unterschied zum Referenztyp?

Ich weiß wasinout tut fürWerttypen.

Mit Objekten oder anderenReferenzty, gibt es in diesem Fall einen Zweck für dieses Schlüsselwort, anstatt @ zu verwendvar?

Code Beispiel:
private class MyClass {
    private var testInt = 1
}

private func testParameterObject(var testClass: MyClass) {
    testClass.testInt++
}

private var testClass: MyClass = MyClass()
testParameterObject(testClass)
testClass.testInt // output ~> 2

private func testInoutParameterObject(inout testClass: MyClass) {
    testClass.testInt++
}

testClass.testInt = 1
testInoutParameterObject(&testClass) // what happens here?
testClass.testInt // output ~> 2

s könnte das gleiche sein wie einfach dasvar Schlüsselwort in der Parameterliste.

Antworten auf die Frage(4)

Ihre Antwort auf die Frage