Какую книгу выбрать?
Для начала - любой учебник по С++, кроме учебников по VisualC++ и BorlandC++ (эти плохому научат).
Потому что С++ имеет такую особенность: 80% языка принципиально непонятны и чужды тому, кто еще не освоил базовые 20% и не имеет достаточного практического опыта их применения. 
Вам нужно самостоятельно написать километры говнокода, чтобы понять правильный подход к ООП в С++, шаблоны, достоинства ссылок перед указателями, применение const и т.п. Никакой учебник тут не поможет.
Игорь Соколов искать не пробовали? Видел несколько таких вопросов, например Какую лучше взять книгу по C++ для начинающего? Выбор книги для новичка в с++. Какая из этих двух подойдет лучше?