title: Implicit conversion to std::vector
body: <p>I've trying to make an implicit conversion from a class that wraps a std::vector to std::vector, but I keep getting this error: </p>
  
  <blockquote>
    <p>error: conversion from 'const value_type {aka const MatrixRow}' to non-scalar type 'std::vector'</p>
  </blockquote>
  
  <p>My class MatrixRow is defined like this:</p>
  
  <pre><code>template &lt;typename NumericType&gt;
  class MatrixRow{
  public:
  
      // a lot of other methods here
      //....
      //......
      explicit operator std::vector&lt;NumericType&gt;() {return row_;}
      //...
      //...
  
  private:
      std::vector&lt;NumericType&gt; row_;
  }
  </code></pre>
  
  <p>The error occurs when I try to make the following in other part of my code:</p>
  
  <pre><code>std::vector&lt;NumericType&gt; row = obj.matrix_[0]; //obj.matrix_[0] is an object of type MatrixRow&lt;NumericType&gt;
  </code></pre>
  
  <p>It is the first time that I'm using implicit conversions so probably I didn't understood how to use them properly. What I'm doing wrong?</p>