在一个线程函数里的代码:
.....
CString tmp,stredit2;
GetDlgItemText(hWnd,IDC_EDIT_CMD,stredit2,sizeof(stredit2)); //获取编辑框中输入的命令行
......
编译出错:
error C2664: 'GetDlgItemTextA' : cannot convert parameter 3 from 'class CString' to 'char *'
.....
CString tmp,stredit2;
GetDlgItemText(hWnd,IDC_EDIT_CMD,stredit2,sizeof(stredit2)); //获取编辑框中输入的命令行
......
编译出错:
error C2664: 'GetDlgItemTextA' : cannot convert parameter 3 from 'class CString' to 'char *'
stredit2.ReleaseBuffer();
推荐这个用法,千万不要直接来强制类型转换,或者对CString搞什么sizeof()之类的东西,CString是个很复杂的Class,有其自己的空间管理规则,不能简单的当成char[]数组来用。