string str=temp;
string append=&temp1[121];
strcat(str,append);
如上代码,两个string的值已知
把第二个接在第一个后面
总是出错呢。
错误信息如下
F:\pscad\VC\alter_data\alter_data.cpp(67) : error C2664: 'strcat' : cannot convert parameter 1 from 'class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >' to 'char *'
No user-defined-conversion operator available that can perform this conversion, or the operator cannot be called
连接两个字符串怎么解决啊。。

解决方案 »

  1.   

    str.append(temp);
    or
    str += temp;
      

  2.   

    我用到的是CString,
    不能用这个方法呢怎么??
    把最终的str赋值给
    CString buffer怎么弄啊
      

  3.   

    楼上的这个命令不行啊
    报错F:\pscad\VC\alter_data\alter_data.cpp(66) : error C2440: 'initializing' : cannot convert from 'class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >' to 'class CString'
            No constructor could take the source type, or constructor overload resolution was ambiguous
      

  4.   

    CString buffer = str.c_str();
      

  5.   

    用snap_buf.SetAt解决了
    每个位依次替换的
    歇歇各位