The following code snippet results in a compile time error:
struct IntStack {
var items = [Int]()
func add(x: Int) {
items.append(x) // Compile time error here.
}
}
Explain why a compile time error occurs. How can you fix it?
Answer / iosraj
Structures are value types. By default, the properties of a value type cannot be modified from within its instance methods.
However, you can optionally allow such modification to occur by declaring the instance methods as ‘mutating’; e.g.:
struct IntStack {
var items = [Int]()
mutating func add(x: Int) {
items.append(x) // All good!
}
}
Is This Answer Correct ? | 0 Yes | 0 No |
What are lazy stored properties, and how are they useful?
What is final class in swift?
How is swift different from objective-c?
How to convert nsarray to nsmutablearray in swift?
What is lazy in swift?
What is swift module?
What is mutating keyword in swift?
What is a function in swift?
What is a static variable swift?
Is swift a functional language?
Why is swift important?
What is core data swift?