---
title: debugDescription
framework: swift
role: symbol
role_heading: Instance Property
path: swift/anykeypath/debugdescription
---

# debugDescription

A textual representation of this instance, suitable for debugging.

## Declaration

```swift
var debugDescription: String { get }
```

## Discussion

Discussion Calling this property directly is discouraged. Instead, convert an instance of any type to a string by using the String(reflecting:) initializer. This initializer works with any type, and uses the custom debugDescription property for types that conform to CustomDebugStringConvertible: struct Point: CustomDebugStringConvertible {     let x: Int, y: Int

var debugDescription: String {         return "(\(x), \(y))"     } }

let p = Point(x: 21, y: 30) let s = String(reflecting: p) print(s) // Prints "(21, 30)" The conversion of p to a string in the assignment to s uses the Point type’s debugDescription property.
