TGViewer
C++ - Reddit C++ - Reddit @r_cpp · 229 subscribers
Post #24249 22
Yet another modules question

Hi all,

Hate to post yet another question on C++20 modules, but none of the existing discussions relate to my dilemma - and I figured I may not be the only one struggling to make a decision here.

So, recently I started a new C++ side project, wanting to make something fun (a desktop GeoGuessr-like game, if anyone’s curious) while learning some new things. A new project doesn’t restrict me with any tech debt, so I just thought it would be nice to use a thing or two from C++20/23. After implementing some basic functionalities, it crossed my mind that in newest standards the modules were introduced as a new way of dividing functionalities across multiple units. Knowing nothing about them (I currently use C++17 at work), I started some research… and it turns out that a lot of people just hate them.

Now, my question to the Community is quite simple: in a brand new C++20/23 project, is it nowadays worth to learn module shenanigans and use them instead of good old header includes? If not as of today, would it be a sane decision in a couple of years?

I don’t care about compilation performance in this case, because it’s a new project (and will probably never become large enough for this to ever be a serious issue). I like the “better encapsulation” slogan, but in the same time… I love headers. Thinking of a repo consisting solely of source files makes me want to throw up, because headers are the thing that make it so much easier to quickly go through the public interface of a unit. I’d gladly retain the old style, but I also want to stay up-to-date with the newest (recommended!) practices, hence my question.

P.S. it’s my first post on the forum, even though I’ve been a silent reader for a while now. Huge respect to all of you guys for making this forum a truly remarkable place to learn and share knowledge!

https://redd.it/1ox7psc
@r_cpp
Reddit From the cpp community on Reddit Explore this post and more from the cpp community
More from @r_cpp
  1. Oct 12, 2026[Release] slick-logger v2.2.0 — Lock-free asynchronous C++20 logging with multi-process sh…
  2. Oct 12, 2026Cheap alternative to reboot parameters (nohz, rcu, isolcpus) for stable benchmarks When no…
  3. Oct 12, 2026This C++ drama is crazy - Adobe votes no https://www.youtube.com/watch?v=DEqx_NMMH9Q https…
  4. Oct 12, 2026FastNoise2: noise generation using SIMD and C++17 https://github.com/Auburn/FastNoise2 htt…
  5. Oct 12, 2026New C++ Conference Videos Released This Month - October 2026 (Updated To Include Videos Re…
  6. Oct 12, 2026cxvm: pin a GCC or Clang version per project on Linux (pyenv/nvm, but for C++ compilers) I…
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 →