我有这段代码在VS6下运行良好,但在VS2010中却给了我错误:

void CGreatString::operator>> (char * lpszDest)
{
strcpy (lpszDest, str());
rdbuf()->freeze(0);
}


我发现this 的问题与我的问题类似,但仍然无法正常工作...

因此,据我了解,VS2010中不推荐使用ostrstream,因此我尝试了以下操作:

void CGreatString::operator>> (char * lpszDest)
{
ostringstream os;
string str = os().str();                     //Error 1 and 2
strcpy (lpszDest, str.c_str());
os.rdbuf()->freeze(0);                       //Error 3
}


但是我仍然会出错:

1-错误C2064:术语不求值为带有0个参数的函数

2-错误C2228:'.str'的左边必须有class / struct / union

3-错误C2039:'freeze':不是'std :: basic_stringbuf '的成员

谢谢!

最佳答案

因此,迷你减价功能不适用于评论。太好了,那不过是rate。

void CGreatString::operator>> (char * lpszDest)
{
    // copy lpszDest into my CGreatString
    // The code you write does nothing at all.
}

关于c++ - 从VS6到VS2010的ostringstream转换,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/10620615/

10-09 07:41