В свое время начинал с Брюса Эккелья — Философия С++. Введение в стандартный С++ (Thinking in C++. Introduction to Standard C++). С самого начала книги поясняет базовые и тонкие моменты очень доступным языком, все на примерах и с приведением реального кода. В качестве продолжения и практического пособия можно почитать его же, Философия C++. Практическое программирование (Thinking in C++. Volume Two: Practical Programming). Очень достойные книги.