title: Is C++11 available in Visual Studio 2017?
body: <p>I am currently using Visual Studio Community 2017. From looking at the C++ Language Standards in the project properties, they only provide C++14 and C++17. Since my code was completed for a previous assignment using a compiler for C++11, I am unable to run my code using functions such as stoi. My question is if there is a way to add C++11 to the language standards for C++?</p>
  
  <p>I am creating a DLL for a GUI, my initializations are:</p>
  
  <pre><code>#include &lt;string&gt;
  #include "stdafx.h"
  
  using namespace std;
  </code></pre>
  
  <p>Here I am creating a fraction class, the main errors follow in the ifstream:</p>
  
  <pre><code>istream&amp; operator&gt;&gt;(istream&amp; in, Fraction&amp; f) {
  
  string number;
  in &gt;&gt; number;                           //read the number
  
  size_t delimiter = number.find("/");    //find the delimiter in the string "/"
  
  if (delimiter != string::npos) {            //if delimiter is not empty
  
      int n = stoi(number.substr(0, delimiter));      //set numerator from string to integer before the "/"
      int d = stoi(number.substr(delimiter + 1));     //set denominator from string to integer after the "/"
  
      if (d == 0) { //if denominator is 0
          throw FractionException("Illegal denominator, cannot divide by zero.");  //illegal argument throw
      }
      else if (n == 0 &amp;&amp; d != 0) {    //numerator is 0, then set values as zero fraction
          f.numVal = 0;
          f.denVal = 1;
      }
      else {                      //set the values into the fraction and normalize and reduce fraction to minimum
          f.numVal = n;
          f.denVal = d;
  
          f.normalizeAndReduce(f.numVal, f.denVal);
      }
  }
  else {  //else if there is no delimiter it would be a single integer
      f.numVal = stoi(number);
      f.denVal = 1;
  }
  
  return in;
  }
  </code></pre>
  
  <p>I am getting the following errors:</p>
  
  <pre><code>C2679: binary '&gt;&gt;': no operator found which takes a right-hand operator of type 'std::string"
  C3861: 'stoi' identifier not found
  </code></pre>
  
  <p>This method worked perfectly fine in eclipse, not sure what I am doing wrong.</p>