The problem is that people starting with C++. A programing language which stands for hard to learn. C++ includes complex structure features.
To have a decent understanding about programming in general I suggest Python/Ruby or Java as beginner based programming language.
It makes it quite easier to learn further elements of a new programming language.
- Just my ****, I prefer. Always up to you, to you skills and confidence to take the effort.
At least, here some books, I took: