Con C++

El crate CXX permite una interoperabilidad segura entre Rust y C++.

El enfoque general es el siguiente:

Consulta el tutorial de CXX para ver un ejemplo completo de su uso.

  • En este punto, el instructor debería cambiar al tutorial de CXX.

  • Guía a los estudiantes a través del tutorial paso a paso.

  • Destaca cómo CXX presenta una interfaz limpia sin código inseguro en ambos lenguajes.

  • Muestra la correspondencia entre los tipos de Rust y C++:

    • Explica que una String de Rust no puede asignarse a una std::string de C++ (esta última no mantiene la invariante UTF-8). Muestra que, a pesar de ser tipos diferentes, rust::String en C++ se puede construir fácilmente a partir de una std::string de C++, lo que la hace muy ergonómica de usar.

    • Explica que una función de Rust que devuelve Result<T, E> se convierte en una función que lanza una excepción E en C++ (y viceversa).