Если C++, то конечно же нужно освоить Страуструпа (рекомендую специальное издание, но только перевод Анисимова и Кононова под редакцией Андреева и Ушакова).
С другой стороны начинать с него очень трудно, сам только с третьего или четвертого раза осилил.
Поэтому сейчас я для себя выстроил такую цепочку:
какой-нибудь самоучитель по С++ для чайников -> Страуструп -> GoF -> Александреску ->…