Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  

Показать сообщение отдельно

Ветеран


Сообщения: 3806
Благодарности: 824

Профиль | Отправить PM | Цитировать


Цитата solonenko:
А почему "правильнее" и где про это можно почитать? »
просто надо немножко вникнуть, что и как происходит

в случае
Код: Выделить весь код
((Get-Date)::today).adddays(-1)
скобки лишние
командлет Get-Date обращается к конструктору класса datetime
получает объект с текущим моментом времени
получает из объекта ссылку на родительский класс - всё тот же datetime
выкидывает объект
обращается к специализированному конструктору класса datetime
получает объект с моментом начала суток
вычитает один день

код
Код: Выделить весь код
[datetime]::today.AddDays(-1)
обращается к специализированному конструктору класса datetime
получает объект с моментом начала суток
вычитает один день

понятно, что если постоянно использовать подобные окольные пути, программы будут работать дольше и памяти требовать больше

вариант
Код: Выделить весь код
(Get-Date).date.AddDays(-1)
ресурсы не экономит, но вместо Get-Date может быть любой момент времени, и всё будет считаться относительно него
т.е. это "чистая функция" которая не использует side-эффекты - код с ней проще отлаживать, изменять, переиспользовать
Это сообщение посчитали полезным следующие участники:

Отправлено: 19:23, 19-02-2020 | #8