I assume you are a beginning programmer?
What do you want to learn? I don't have any Arduino-specific books but someone else can recommend one.
Note that the Arduino doesn't run standard C++.
I also don't have (and I've never seen) a "general" computer science/programming book or website. They are all language-specific. In fact, I don't know of a book or website that covers the "big picture" or programming concepts. They all just jump-in and teach the programming language. My 1st programming class was the same and I was confused most of the time, although it didn't really seem that hard.** I assume some classes do cover this stuff, but I don't remember if I learned those things from a class or if it's just something I "picked up".
I have a few C++ books you might want to check out -
The C++ Standard Library covers most of the "++" part of C++ and I'd say it's "readable" and well organized. (But it shouldn't be your 1st programming book.)
C++ Distilled is also readable and broken into short sections.
Thinking In C++ is supposed to be readable, but I wasn't that impressed... I think it's available free online (legally) if you want to check it out before buying a hard copy
** It's pretty easy to get started with Arduino programming but in general programming IS HARD! It's abstract and "different" from any other subject/field. Compliers are "picky" and one little mistake/typo can cause the compiler to report hundreds of errors! Professional programmers make more mistakes (or "bugs") every day than any other professionals. (Thankfully, most errors are corrected immediately.)
`