Code::Blocks is an IDE not a compiler, but anyway, it's a good one at that. If you want a compiler, GCC is good. If you want an IDE, there are numerous ones out there. Some good IDEs are Eclipse, Netbeans, and I've heard CLion is good.
KDevelop is interesting - a mature application that lets one develop in over 60 different languages / scripting provided one has a compiler interpreter for the language/script. Other technologies such as sfml and/or Qt can be integrated into it.