Wie erhalte ich den Klassennamen eines Objekts als String in Swift?
Hallo zusammen! Ich bin neu in Swift und versuche zu verstehen, wie ich den Klassennamen eines Objekts als String erhalten kann. In Objective-C habe ich `NSStringFromClass([self class])` verwendet, aber in Swift funktioniert das nicht.
Ich muss Objekttypen zur Laufzeit für das Debugging loggen. Zum Beispiel habe ich ein Protocol `Animal` und mehrere Structs, die es implementieren: `Dog`, `Cat` und `Bird`. In der Funktion `printAnimalType(animal: Animal)` möchte ich den konkreten Typnamen ausgeben, der übergeben wurde, und nicht einfach "Animal".
Hier ist ein Beispiel meines Codes:
```swift
protocol Animal {
func makeSound()
}
struct Dog: Animal {
func makeSound() { print("Woof!") }
}
struct Cat: Animal {
func makeSound() { print("Meow!") }
}
func printAnimalType(animal: Animal) {
// Wie erhalte ich hier den String "Dog" oder "Cat"?
}
```