2015-04-17 3 views
28

Я пытаюсь добавить точку останова в линии # gutter, но контрольная точка не добавляется, когда я делаю это на игровой площадке. Возможно ли это или есть другой способ установить точки останова на игровой площадке?Отладка контрольной точки в Swift Playground?

enter image description here

+2

Само понятие точки останова, диаметрально противоположен всему понятие какой площадка. - И вообще, что бы вы сделали, если бы могли остановиться на контрольной точке? Отладчика тоже нет! – matt

+0

Я хотел бы увидеть значение переменных в этой точке. – TruMan1

+3

В столбце справа от кода вы должны увидеть значение каждого выражения при выполнении этой строки кода. Если он выполняется несколько раз, вы увидите «(10 раз)», но вы можете щелкнуть синюю точку и увидеть значения с течением времени либо в виде графика, либо в виде списка. –

ответ

22

Там нет отладчика, так что вы не можете добавить точки останова.

1

Мэтт, я не мог ввести код в комментарии, поэтому лучше просмотреть переменную в строке, чтобы «отладить» ее.

for index in 1...5 { 
    dosomething(foo); 
    foo; 
} 

Затем вы можете нажать на глазное яблоко на правой стороне, чтобы увидеть историю обув, как он был изменен в цикле.

+1

C-стиль для петли - это история. –

+0

Нажатие на глазное яблоко не работает для меня (XCode 7.2.1)? –

+0

В правой колонке для каждого расчета на игровой площадке должна быть кнопка, которая дает всплывающее окно. Вы можете переключать разные режимы. Мой пример был выполнен в xcode 7. – netskink

0

Я просто мочу ноги в Swift, но я думаю, что идея игровой площадки - показать изменяющееся состояние, как если бы вы бегали в отладке и записывали все переменные изменения. Фактической необходимости в точке останова нет, поскольку вы можете видеть состояние в любой момент времени. Я думаю, что мне понадобится время, чтобы привыкнуть к этому, используя отладчик в течение> 30 лет, но он должен быть очень полезен для небольших бит изолированного тестового кода, особенно когда я изучаю язык.

0

Если вы хотите приостановить выполнение игровой площадки, чтобы заглянуть в то, что происходит, вы можете использовать sleep. Информация, которую вы можете получить, не так важна, как то, что вы можете получить от lldb.

Для этого вам нужно добавить import Foundation в верхней части игровой площадки.

Тогда, где вы хотите, чтобы приостановить выполнение, вы можете добавить следующее:

sleep(10) // 10 second pause...you can make the number whatever you want

Смежные вопросы