Hi, i'm "kind of" in a similar situation, i know C++, i learn Qt but the progress is not as fast as i wanted to be.
From my "experience" (learning experience) it isn't a book to teach you that (you should read many and practice, do exercises...), but i really recommend the C++ programming language written by Bjarne Stroustrup, it contains some chapters about design (i'm not at that chapters yet, so i can't say if i like it or not)
Anyway, my opinion is that you should read many books, work with libraries that are known to be good (like Qt and Boost) and try to get a programming job, you will learn from experienced programmers (read/answer to forums might compensate a little bit, if you are in a similar situation like meand can't find a job)
Bookmarks