在unicode环境下
CString strtemp="abc";
m_strRXData+=strtemp;m_strRXData是edit控件变量 
编译的时候报错
错误 1 error C2676: 二进制“+=”: “CEdit”不定义该运算符或到预定义运算符可接收的类型的转换

解决方案 »

  1.   

    CEdit控件名字怎么起的和CString 一样了。
    CEdit肯定不能用+=这样的运算符的。
    我理解楼主的原意,应该是在DDX里把这个变量设成值类型的吧
      

  2.   

    至少unicode 下应该这样写:
    CString strtemp= _T("abc"); 
      

  3.   


    CString strtemp=_T("abc");
    CString strText(_T(""));
    m_strRXData.GetWindowText(strText);
    strText+=strtemp;m_strRXData.SetWindowText(strText);你是想这样?
      

  4.   

    // 直接用下面这句可以将 字符串 放入 Edit 控件中
    m_strRXData.SetWindowText( strtemp );// 在unicode环境下,下面的赋值也是可以的,CString 会帮助转换
    CString strtemp="abc";
    // 但这样写更加严谨
    CString strtemp= _T("abc");