PowerShell по умолчанию имеет тип заливки на лету, так как операции называют их.
$MyAnswer = 4 + 4
Write-Host $MyAnswer
Увидит операцию 4 +-и хранить их как целое значение 8. В приведенной выше сценарии он будет записать целое число 8.
PowerShell также гибкий для строгих типажей, где вы можете явно использовать тип данных
$MyAnswer = [string]4 + 4
Write-Host $MyAnswer
и
$MyAnswer = "4" + "4"
Write-Host $MyAnswer
Оба они будут видеть, т он два 4 в виде строки и выписывает «44»
Что касается сценария выше, он создает массив символов из символов «_» для каждой буквы (char) в переменной $ targetWord.
Если запустить его из консоли, и сделать
записи хоста $ targetWord записи хоста $ wordProgress
Вы получаете (в моем случае)
America
_ _ _ _ _ _ _
В [полукокса []] является просто явным объявлением массива символов, чтобы преодолеть любое нечетное поведение PowerShell по умолчанию.
Является ли «написать игру палача» общим проектом для курсов PowerShell? На каком уровне обучается этот проект? Мне просто любопытно, я ничего не имею против этого вопроса, если это связано с домашней работой. Я знаю, что я видел по меньшей мере двух других вопросов «палача PowerShell» на SO. – jscott
^Да, это игра палача в powerShell. Это от SE. –
Чтобы ответить на то, что вы действительно задали здесь: цель '[char []]' заключается в том, чтобы фактически передать значение в char-array, так же, как вы могли бы использовать практически любой другой тип .Net. :) –