Why do we need closure in swift?
No Answer is Posted For this Question
Be the First to Post Answer
What is swiftnet?
Is swift difficult to learn?
What are the characteristics of switch?
What is asynchronous in swift?
How many types of closures are there in swift?
What is the difference between swift and objective c?
What is the swift main advantage?
What is nested function in swift?
What is nil-coalescing operator?
What is difference between weak and strong in swift?
What is nil in swift?
Swift defines the AnyObject type alias to represent instances of any reference type, and it’s internally defined as a protocol. Consider the following code: var array = [AnyObject]() struct Test {} array.append(Test()) This code generates a compilation error, with the following error message: Type 'Test' does not conform to protocol 'AnyObject' The failure is obvious because a struct is a value and not a reference type, and as such it doesn’t implement and cannot be cast to the AnyObject protocol. Now consider the following code: var array = [AnyObject]() array.append(1) array.append(2.0) array.append("3") array.append([4, 5, 6]) array.append([7: "7", 8: "8"]) struct Test {} array.append(Test()) The array array is filled in with values of type respectively int, double, string, array and dictionary. All of them are value types and not reference types, and in all cases no error is reported by the compiler. Why?