Hacker News new | ask | show | jobs
by jdmoreira 2330 days ago
You can read some of the criticisms here https://en.m.wikipedia.org/wiki/Header-only
2 comments

None of them seem relevant for a small-scale unitary project.
Even a large project like SQLite is provided as a single, unified header file!
A better resource is this:

https://github.com/nothings/stb/blob/master/docs/stb_howto.t...

There's an important difference between C++ style header-only libs, where the implementation is often done in inline code (especially for template-heavy APIs) and thus visible in each compilation unit (which is indeed bad for compile times), and "STB-style single-file libs", where the implementation is only visible in a single compilation unit.

The difference between a single .h file and a .h/.c pair is really just different packaging for distribution and integration into projects.