求解 error C2664: “std:basic_stringbasic_string(const std:该如何解决

求解 error C2664: “std::basic_string<_Elem,_Traits,_Ax>::basic_string(const std::

string gScriptLine::GetString(int index)
{
if (!(index < m_arParam.size()))
return "";

string t = m_arParam[index];

string::iterator it = remove(t.begin(), t.end(), '"');

string ret(t.begin(), it);

if (ret.empty())
return string();

return ret.begin();
}

出现错误 



 error C2664: “std::basic_string<_Elem,_Traits,_Ax>::basic_string(const std::basic_string<_Elem,_Traits,_Ax>::_Myt &)” : 不能将参数 1 从“std::basic_string<_Elem,_Traits,_Ax>::iterator”转换为“const std::basic_string<_Elem,_Traits,_Ax>::_Myt &”
  with
  [
  _Elem=char,
  _Traits=std::char_traits<char>,
  _Ax=std::allocator<char>
  ]
  and
  [
  _Elem=char,
  _Traits=std::char_traits<char>,
  _Ax=std::allocator<char>
  ]
  and
  [
  _Elem=char,
  _Traits=std::char_traits<char>,
  _Ax=std::allocator<char>
  ]
  原因如下: 无法从“std::basic_string<_Elem,_Traits,_Ax>::iterator”转换为“const std::basic_string<_Elem,_Traits,_Ax>::_Myt”
  with
  [
  _Elem=char,
  _Traits=std::char_traits<char>,
  _Ax=std::allocator<char>
  ]
  and
  [
  _Elem=char,
  _Traits=std::char_traits<char>,
  _Ax=std::allocator<char>
  ]
  无构造函数可以接受源类型,或构造函数重载决策不明确

------解决方案--------------------
* begin()
------解决方案--------------------
C/C++ code

string gScriptLine::GetString(int index) 
{
 ...
  return ret.begin(); //类型不匹配啊
}

------解决方案--------------------
因为你函数返回类型是string.
 ret.begin(); 的类型是个迭代器,
所以要类型匹配,需要return ret;
------解决方案--------------------
知道'*' 运算符么?这要具体到哪?
探讨
* begin() 

不是很明白,能说具体点吗

------解决方案--------------------
直接return ret;
------解决方案--------------------
知道'*' 运算符么?这要具体到哪?
探讨
* begin() 

不是很明白,能说具体点吗