I need help on a recommendation for a good OOP book. But before you do, please allow me to explain what kind of book I'm looking for.
I have trouble creating my UML diagrams. More often then not I find myself struggling to achieve a diagram that is both correct and true from an OOP standpoint. I understand this is a somewhat slow process. That many ideas only come by fiddling with the diagram and trying to improve it. However, truth the matter is that on those team brainstorms at work during the pre-development stage, I'm usually the one lacking in ideas and offering the least input. Most of my workmates seem to "think OOP". I, on the other hand, apparently can't. I know the rules, the mechanics, the concepts and even the syntax (Visual Basic, that is). But I simply can't seem to have yet switched my brain to start adopting OOP as something that comes naturally to me, instead of only after much pain.
Now that I'm learning C++, I want to start taking this more seriously. Contrary to VB, C++ seems to force you in that direction. I need a book that helps me "think OOP". I need help achieving my OOP chi. Programming language considerations are not the problem here. OOP is. So the book can be written for any programming language I can at least read (VB, C/C++, Java, Delphi). Or, better yet, not be written with any language in mind.
Is there such a book you would recommend?