Habr<p>FFI: как создать мост между Rust и C/C++</p><p>Привет, Хабр! Сегодня мы рассмотрим, как создать безопасные FFI-интерфейсы в Rust для интеграции с C/C++ библиотеками Если говорить проще, FFI (foreign function interface — интерфейс вызова внешних функций) – это способ «позаимствовать» функциональность из другого языка. В контексте нашей статьи, с одной стороны у нас Rust, где каждый байт памяти охраняется компилятором, а на другой C++, где свобода обращения с памятью может обернуться утечками или, что еще хуже, непредсказуемым UB (англ. undefined behavior, в ряде источников непредсказуемое поведение). И наша задача – сделать так, чтобы эти два мира не конфликтовали, а работали в унисон.</p><p><a href="https://habr.com/ru/companies/mvideo/articles/892926/" rel="nofollow noopener noreferrer" translate="no" target="_blank"><span class="invisible">https://</span><span class="ellipsis">habr.com/ru/companies/mvideo/a</span><span class="invisible">rticles/892926/</span></a></p><p><a href="https://zhub.link/tags/%D0%BC%D0%B2%D0%B8%D0%B4%D0%B5%D0%BE" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>мвидео</span></a> <a href="https://zhub.link/tags/%D1%8D%D0%BB%D1%8C%D0%B4%D0%BE%D1%80%D0%B0%D0%B4%D0%BE" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>эльдорадо</span></a> <a href="https://zhub.link/tags/%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>программирование</span></a> <a href="https://zhub.link/tags/rust" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>rust</span></a> <a href="https://zhub.link/tags/c" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>c</span></a>++</p>