цель его использования?
Ограничение 'static на обобщённый тип означает, что тип либо владеющий, либо содержит только ссылки со временем жизни 'static
Типа как пример если я захочу использовать MyGeneric<MyType<'a> > когда MyGeneric<T: 'static> это не прокатит если ' a != 'satatic?
Зависит от вариантности типа MyType по параметру 'a
Давайте попробуем с другой стороны :) В каких ситуациях я должен его указывать осознанно, а не по требованию компилятора (ну типа он может советовать когда ошибку пишет как ее исправить). Я пытаюсь use case на него представить.
Ну, например, у нас значение, которое мы хотим передать из одного потока в другой, и это значение может пережить породивший его поток
Про 'static интресно для уяснения: let s = "mystr"; индентично let s: &'static str = "mystr"; Все строки имеют такой тип по умолчанию. И живут на протяжений всей программы. Когда мы присваиваем своей переменной тип 'static то она начнет жить как и они. Остается понять нужно ли это в конкретном случае(?)
константы*
Обсуждают сегодня