Something that I've found useful when getting back into #cplusplus is learning #Rust at the same time.
A lot of the ideas in C++ are made explicit in Rust, so as I read, for example, how Rust treats string slices vs. strings, and then I see a lot of machinery around manipulation of a C++ string view, I can go "Oh, yes, this is attempting to minimize the need to copy strings."
C++ (for historical reasons mostly) has too many ideas jumbled together in too many ways to self-describe; Rust makes those ideas explicit, so they're easier to understand.