If you're a beginner I say start with C++ Primer Plus for a C++ book. http://www.amazon.com/Primer-Plus-Edition-Developers-Library/dp/0321776402/ref=sr_1_1?ie=UTF8&qid=1371615847&sr=8-1&keywords=c%2B%2B+Primer+Plus
If you want to learn 3D Graphics I suggest for DirectX any book by Frank D. Luna http://www.amazon.com/Introduction-3D-Game-Programming-DirectX/dp/1936420228/ref=sr_1_1?s=books&ie=UTF8&qid=1371615896&sr=1-1&keywords=3d+game+programming+with+direct+x
Or the OpenGL SuperBible 6th Edition (I've read the preview edition best OpenGL book for beginners): http://www.amazon.com/OpenGL-SuperBible-Comprehensive-Tutorial-Reference/dp/0321902947/ref=sr_1_1?s=books&ie=UTF8&qid=1371615959&sr=1-1&keywords=Opengl+Superbible
OpenGL DirectX tutorials online: www.rastertek.com
OpenGL 4.0 Tutorials:
Opengl 4.2 Tutorial:
An indepth look at computer graphics using opengl 3.3: http://www.arcsynthesis.org/gltut/
You'll need some math books but both the directx and opengl book will point you in the right direction for that in the reference section. Make sure you focus on learning the language c++ first though, and write some small applications yourself (practice) They don't have to be complicated, but make sure you understand those concepts as you're learning. Programming is a big undertaking and it goes much deeper than what you'll get form your first book C++ Primer. But this will be enough to get you started Good LUCK!!!