There are several good Disassemblers, which take an executable, then turn it into Assembly Language(A very low level programming language), you can then turn the Assembly language into C++. But this is a whole lot of trouble (Assembler's hard ).

You can not decompile a C++ executable and get C++ code back(unless you have some sort of ASM to C++ converter).