Subversion is the recommended tool for version control of C++ projects.
Valgrind is the recommended tool for finding memory leaks and profiling code to increase efficiency.
Eclipse has a C++ IDE. But be careful: your assignments will not be compiled or executed inside eclipse during grading, so make sure you have a makefile that works at the top level!
Boost is a large (and mostly good) class library for C++. (Note: The boost library may not be used for most class assignments, but will be allowed near the end.)
Other Software Resources
Doxygen is a good tool for documenting C++ projects.
TUT (template unit testing) is a free and simple (but not very feature-full) unit testing framework for C++.
Professional Resources
The largest and most important professional society for computer science is the ACM.
The IEEE CS Society is also important, particularly in those areas of CS that
overlap electrical engineering.
For specialists in Artificial Intelligence, the key society is AAAI.