We could list random "features" of programming languages that you "must know", but that's purely speculative.
If you want to start right away making games while you learn C++, then the typical solution is to make text-based games so you don't have to learn APIs and the features the APIs use while learning C++.
But if you start with SDL or Allegro, you could just start messing with it and see what you can do. But there's something important to understand: If you get confused and want to give up, that's because you're not bothering to learn the language first and are trying to jump into the deep end of the pool before learning how to swim. So if while working on your project you want to give up on programming entirely: Don't. Instead, scrap what you know, pick up a solid C++ book (without any game-related words in the book's title) and learn C++ first.
If you want a speculative list of "basic C++" knowledge, then:
- Variables, reference variables, and pointer variables.*
- if(), while(), for() statements
- Classes and structs
- std::vector, std::map, and std::string
- Variable scope
*Pointers and references are easy to learn if you learn them at the same time you learn about regular variables.
Things to avoid using in your own projects when starting out: (learn but don't use in your first few projects)
- 'new' and 'delete', malloc() and free()
- Inheritance (especially polymorphism)
- Custom templated functions and classes.
- Exceptions, goto