Это немного похоже на вопрос, можете ли вы указать i32
в качестве параметра типа в объявлении структуры:
struct Abc<i32> {}
Это не имеет смысла [1] .
Параметр типа позволяет полям структуры быть обобщенными c:
struct Abc<T> {
foo: T, // a user of this struct can choose the type of T
}
Аналогично, параметр времени жизни позволяет генерировать время жизни ссылки c:
struct Abc<'a> {
foo: &'a str, // a user of this struct can choose the lifetime bound
}
Если вы хотите, чтобы время жизни всегда было стабильным c, просто укажите это, а не делайте его обобщенным c:
struct Abc {
foo: &'static str, // this must always be static
}
[1] На самом деле он объявляет параметр типа, который, как оказалось, имеет то же имя, что и тип i32
, но вряд ли это было бы то, что человек, который пытался написать что-то подобное, намеревался.