Swiftの辞書でprint()
を使用すると、キーと値でコンソールにきれいできれいに出てきます。Sweet Dictionary in Xcode
object = Optional({
customerId = 111;
transactionId = 333;
extraId = 444;
})
私は、同じ辞書でpo
を実行すると、それは読み非常に困難である。このナンセンスダンプを出してくれる。
▿ Optional<Any>
▿ some : 3 elements
▿ 0 : 2 elements
▿ .0 : transactionId
- .1 : 333
▿ 1 : 2 elements
▿ .0 : customerId
- .1 : 111
▿ 2 : 2 elements
▿ .0 : extraId
- .1 : 444
使用するだけでp
さらに悪くなる
(Any?) $R8 = some {
payload_data_0 = 0x0000000170e679c0 {
Swift._SwiftNativeNSDictionary = {}
_heapBufferBridged_DoNotUse = 0x0000000170e679d0 {}
nativeStorage = {
buffer = 0x00000001703e4300 {
Swift.ManagedBuffer = {}
}
initializedEntries = (values = 0x00000001703e4328, bitCount = 4)
keys = 0x00000001703e4330
values = 0x00000001703e4390
}
}
payload_data_1 = 0x0000000000000000
payload_data_2 = 0x0000000000000000
instance_type = 0x0000000105ffc3f8
}
私は私が実際にすべてのこのナンセンスを取捨選択することなく、それらを読むことができる方法で私の変数を参照するには、コンソールで行うことができますか?
PS - この場合、辞書であるOptional<Any>
オブジェクトを印刷していますが、非オプションの辞書でも同じです。
デバッガで 'pオブジェクト! 'と表示されますか? –
LLDBデータフォーマッタを調べる必要があります。私はそれを動作させるチョップを持っていませんが、WWDC 2014からの[LLDBでのAdvanced Swift Debugging](https://developer.apple.com/videos/play/wwdc2014/410/)です。 34分のマーク。 –