title: No matching function for call to error when reading from a valid file
body: <p>I have the following data in a file:</p>
  
  <pre><code>0001 O 100 102.30
  0001 O 101 333.22
  0001 O 102 679.13
  0001 P 103 513.36
  0001 P 104 700.94
  </code></pre>
  
  <p>With the following code:</p>
  
  <pre><code>vector&lt;string&gt; customerID;
  vector&lt;char&gt; transactionType;
  vector&lt;string&gt; transactionNumber;
  vector&lt;double&gt; amount;
  
  string cID, tT, tN, amnt;
  
  for(;infile2 &gt;&gt; cID &gt;&gt; tT &gt;&gt; tN &gt;&gt; amnt;){
      customerID.push_back(cID);
      transactionType.push_back(tT);
      transactionNumber.push_back(tN);
      amount.push_back(amnt);
  }
  </code></pre>
  
  <p>and the error:</p>
  
  <pre><code>error: no matching function for call to 'std::vector&lt;char&gt;::push_back(std::string&amp;)'
  error: no matching function for call to 'std::vector&lt;double&gt;::push_back(std::string&amp;)'
  </code></pre>
  
  <p>Is it assuming every data item is a string ?
  How can i fix this ?</p>