title: C++ error:expected ‘;’ at end of member declaration
body: <pre><code>#include &lt;map&gt;
  #include &lt;memory&gt;
  #include &lt;iostream&gt;
  
  using namespace std;
  
  class test
  {
  public:
      test(){}
      ~test(){}
      enum type
      {
          error = 0
      };
  private:
      shared_ptr&lt;map&lt;int, type&gt;&gt; member_ = make_shared&lt;map&lt;int, type&gt;&gt;();//build error
      //shared_ptr&lt;map&lt;type, int&gt;&gt; member_ = make_shared&lt;map&lt;type, int&gt;&gt;();//build ok
  };
  
  int main()
  {
      return 0;
  }
  </code></pre>
  
  <p>when i compile program with <code>"shared_ptr&lt;map&lt;int, type&gt;&gt; member_ = make_shared&lt;map&lt;int, type&gt;&gt;()"</code></p>
  
  <pre><code>main.cpp:17:63: error: expected ‘;’ at end of member declaration
       shared_ptr&lt;map&lt;int, type&gt;&gt; member_ = make_shared&lt;map&lt;int, type&gt;&gt;();
                                                                 ^
  main.cpp:17:67: error: expected unqualified-id before ‘&gt;&gt;’ token
       shared_ptr&lt;map&lt;int, type&gt;&gt; member_ = make_shared&lt;map&lt;int, type&gt;&gt;();
                                                                     ^
  main.cpp:17:58: error: wrong number of template arguments (1, should be at least 2)
       shared_ptr&lt;map&lt;int, type&gt;&gt; member_ = make_shared&lt;map&lt;int, type&gt;&gt;();
                                                            ^
  In file included from /usr/include/c++/5/map:61:0,
                   from main.cpp:1:
  /usr/include/c++/5/bits/stl_map.h:96:11: note: provided for ‘template&lt;class _Key, class _Tp, class _Compare, class _Alloc&gt; class std::map’
       class map
             ^
  main.cpp:17:42: error: parse error in template argument list
       shared_ptr&lt;map&lt;int, type&gt;&gt; member_ = make_shared&lt;map&lt;int, type&gt;&gt;();
                                            ^
  main.cpp:17:42: error: cannot resolve overloaded function ‘make_shared’ based on conversion to type ‘std::shared_ptr&lt;std::map&lt;int, test::type&gt; &gt;’
  </code></pre>