Como exibir o endereço de memória de uma variável em Swift? (para depuração)
Olá a todos! Sou um desenvolvedor iOS iniciante e tive um problema ao depurar código. Preciso entender se duas variáveis referenciam o mesmo objeto na memória ou são cópias diferentes.
Sei que em Objective-C era possível usar `%p` no `NSLog`, mas em Swift, com sua tipagem estrita, é mais complicado. Tentei várias maneiras, mas até agora sem sucesso.
Aqui está um exemplo que me interessa:
```swift
class Person {
var name: String
init(name: String) {
self.name = name
}
}
let person1 = Person(name: "Alice")
let person2 = person1
person2.name = "Bob"
print(person1.name) // Imprime "Bob" — ou seja, é um tipo por referência
```
Como posso exibir o endereço de memória real onde os objetos `person1` e `person2` estão armazenados, para confirmar que eles realmente apontam para o mesmo local na memória? Tentei usar `print(person1)` — mas isso imprime a descrição do objeto, não o endereço. Tentei `withUnsafePointer(to: &person1)` — mas isso é o endereço da própria
No answers yet.
Faça login para deixar uma resposta
Blogs