У Rust посилання ніколи не можуть бути нульовими, тому у випадку, коли вам насправді потрібне null, наприклад, пов'язаний список, ви використовуєте Optionтип:
struct Element {
value: i32,
next: Option<Box<Element>>,
}
Скільки накладених на це витрат з точки зору виділення пам’яті та кроків до розмежування порівняно з простим покажчиком? Чи існує якась "магія" у компіляторі / середовищі виконання, щоб зробити її Optionбезкоштовною або менш затратною, ніж якщо б її самостійно реалізувати Optionв непрофільній бібліотеці, використовуючи ту саму enumконструкцію, або обернувши покажчик у вектор?
Optionподібних" переліченнях, тому вона також буде працювати для визначених користувачемOption.