title: what's the usage of macro _LIBCPP_TEMPLATE_VIS in "class _LIBCPP_TEMPLATE_VIS vector"
body: <p>like standard library class vector, the declaration is always like this
  &quot;class _LIBCPP_TEMPLATE_VIS vector&quot;.</p>
  <p><a href="https://github.com/llvm-mirror/libcxx/blob/7102892bf3dfffb3f988aa9a0a29f58171a508d7/include/__config#L717" rel="nofollow noreferrer">https://github.com/llvm-mirror/libcxx/blob/7102892bf3dfffb3f988aa9a0a29f58171a508d7/include/__config#L717</a></p>
  <p>No idea why the macro is inserted between the class keyword and class name.</p>