Installation of a C++11 compiler
As mentioned previously, we will use C++11, so we need a compiler for it. For each operating system, there are several options; choose the one you prefer.
For Linux users
If you are a Linux user, you probably already have GCC/G++ installed. In this case, check whether your version is 4.8 or later. Otherwise, you can install GCC/G++ (version 4.8+) or Clang (version 3.4+) using your favorite packet manager. Under Debian based distribution (such as Ubuntu and Mint), use the command line:
sudo apt-get install gcc g++ clang -y
For Mac users
If you are a Mac user, you can use Clang (3.4+). This is the default compiler under Mac OS X.
For Windows users
Finally, if you are a Windows user, you can use Visual Studio (2013), Mingw-gcc (4.8+), or Clang (3.4+) by downloading them. I suggest you not use Visual Studio, because it's not 100 percent standard compliant, even for the C99, and instead use another IDE such as Code::Blocks (see the following paragraph).
For all users
I assume that in both cases, you have been able to install a compiler and configure your system to use it (by adding it to the system path). If you have not been able to do this, another solution is to install an IDE like Code::Blocks, which has the advantage of being installed with a default compiler, is compatible with C++11, and doesn't require any system configuration.
I will choose the IDE option with Code::Blocks for the rest of the book, because it does not depend on a specific operating system and everyone will be able to navigate. You can download it at http://www.codeblocks.org/downloads/26. The installation is really easy; you just have to follow the wizard.