Pro tip: clang-tidy understands pretty much all of the cpp core guidelines, and if you're using clangd it can emit clang-tidy warnings for violations (and in some cases even provide fixits). Not to mention a bunch of other really useful style rules. You should definitely be using it if you're not already.