I'm planning to take a C++ Data Structures class in the fall, however I don't feel ready for it all. I'm currently in my 3rd semester of C++ programming, which deals with Object Oriented Programming. We're working heavily with classes, operator overloading, and we're soon to start inheritance and other stuff. I feel comfortable with fundamental topics like loops, functions, arrays, etc. Coming up with a solution to school assignments isn't hard, but translation my mental solution to code is often difficult.
I'm still struggling with pointers. I've read countless tutorials and books on them. I can perform trivial little exercises but once they're implemented in massive school projects I get lost and have to ask for help.
Over the summer I have a relatively light class schedule, so I'd like to prepare myself for Data Structures, so that I can hit the ground running as soon as the class begins. I just don't know where to start and what to learn, aside from pointers of course.
Recursion is frequently used in lots of data structures, so that's a topic you should become comfortable with. Otherwise, assuming you're good on the above topics you've mentioned, you should be fine.
My advice for getting better with pointers is to learn C. And if you don't want to take the time to do so, you should at least read the pointers chapter in The C Programming Language. It explains them clearly, in depth, and you'll walk away feeling confident with them.