Как сохранить структуру в переменной в Rust?
blockquote>Rust - это статически типизированный язык, и как таковой он невозможен , чтобы сохранить тип в переменной, а затем использовать эту переменную для создания экземпляра типа.
Это причина, по которой вы не можете выразить тип
s
; для этого просто нет слов в языке.
В зависимости от того, что вы хотите сделать, вы можете посмотреть:
- Обобщения:
fn f2<T: Default>()
позволит создать экземпляр любого типаT
, реализуя [113 ] черта.- Полиморфизм времени выполнения: фабричная функция
FnOnce(i32) -> Box<Trait>
может создавать экземпляр любого типа, реализующийTrait
изi32
.
jwz_threading похож точно, что Вы просите. Я не использовал его.