You can view my simple mesh C++ class. The class relies on input meshes that are closed (no holes or cracks). A sample STL file is given.
https://github.com/sjhalayka/meshdim
I use the mesh class to get the data about the shared edges, to determine triangle neighbours.