Beyond the language you choose, you really need to look into things like Game Programming Patterns, most importantly fundamentals like the game loop, input, and rendering. You can buy this book in hard copy form, e.g. on amazon, or you can read it completely free on their website.
Whether or not you stick with C++ or use an engine, or a framework, knowing these basic concepts is important as once you know how it works under the hood, and knowing that every single game follows some of these patterns right through from pong to the latest greatest AAA game, you can implement a lot of stuff without even thinking.
These resources weren't around when I started (or even communities such as this one!) so i had to brute force these solutions myself. You're in a better position, and I know this advice will help!
Good luck!