TGViewer
Rust Rust @rust_code · 8.91K subscribers
Post #1240 4.29K
🚨 В Rust появился безопасный способ брать указатели на поля без UB

Если работаешь с raw pointers, рано или поздно упираешься в проблему.

Нужно получить указатель на поле структуры. Но через обычную ссылку это может сломать правила borrow checker и привести к скрытым багам.

Особенно если речь про unsafe-код и тонкие места с aliasing.

Для этого в std есть addr_of! и addr_of_mut!.

Они позволяют взять указатель на поле напрямую, без создания временной ссылки. Это важно, потому что ты не нарушаешь stacked borrows и не создаёшь лишних промежуточных состояний.

По сути ты получаешь pointer projection без побочных эффектов.

Это мелкая деталь, но в низкоуровневом коде она решает реальные проблемы. Особенно в FFI, системном коде и оптимизациях.

Если пишешь unsafe в Rust, эти макросы стоит знать.
  • ❤ 35
  • 👍 4
  • 🥰 1
  • 🖕 1
  • 🤗 1
More from @rust_code
  1. Sep 24, 2026🦀 Как доказать, что Rust-код работает правильно: Amazon рассказывает о Verus Rust предотв…
  2. Sep 24, 2026❌В IT сейчас кризис джунов, но только не в кибербезе. ❗️Рынку не хватает 50 000 специалист…
  3. Sep 24, 2026Rust без аллокатора: `fff` снизил пиковое потребление памяти через `mmap` Во время тестиро…
  4. Sep 23, 2026photo post
  5. Sep 20, 2026Zero cost
  6. Sep 19, 2026🦀 NVIDIA официально идёт в native GPU programming на Rust Теперь CUDA Rust позволяет писа…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →