按照文档对于这个函数的定义,void ATL::CStringT<BaseType,StringTraits>::Format(const wchar_t *,...),
定义变量r为CString型,语句r.Format("%f%s=%f%s",1.0,u1,t,u2);被判错。判错信息为c:\documents and settings\dell\桌面\工作资料\mfcs\ctrltest\ctrltest\ctrltestdlg.cpp(217) : error C2664: “void ATL::CStringT<BaseType,StringTraits>::Format(const wchar_t *,...)”: 不能将参数 1 从“const char [10]”转换为“const wchar_t *”
1> with
1> [
1> BaseType=wchar_t,
1> StringTraits=StrTraitMFC_DLL<wchar_t>
1> ]
1> 与指向的类型无关;转换要求 reinterpret_cast、C 样式转换或函数样式转换以下是程序片断:
void CCtrltestDlg::OnBnClickedButtonEqual()
{
// TODO: 在此添加控件通知处理程序代码
UpdateData(TRUE); double t = GetConvFactor();
CString strTemp; m_ltUnit2.GetText(m_ltUnit2.GetCurSel(),strTemp);
m_result.Format("%f",m_dbNumber*t);
m_result+=strTemp; UpdateData(FALSE);
}void CCtrltestDlg::OnCbnSelchangeComboUnit1()
{
// TODO: 在此添加控件通知处理程序代码
double t = GetConvFactor();
CString u1,u2,r; m_cbUnit1.GetLBText(m_cbUnit1.GetCurSel(),u1);
m_ltUnit2.GetText(m_ltUnit2.GetCurSel(),u2);
r.Format("%f%s=%f%s",1.0,u1,t,u2); m_ref.SetWindowText(r);
}void CCtrltestDlg::OnLbnSelchangeListUnit2()
{
// TODO: 在此添加控件通知处理程序代码
double t = GetConvFactor();
CString u1,u2,r; m_cbUnit1.GetLBText(m_cbUnit1.GetCurSel(),u1);
m_ltUnit2.GetText(m_ltUnit2.GetCurSel(),u2);
r.Format("%f%s=%f%s",1.0,u1,t,u2); m_ref.SetWindowText(r);
}
定义变量r为CString型,语句r.Format("%f%s=%f%s",1.0,u1,t,u2);被判错。判错信息为c:\documents and settings\dell\桌面\工作资料\mfcs\ctrltest\ctrltest\ctrltestdlg.cpp(217) : error C2664: “void ATL::CStringT<BaseType,StringTraits>::Format(const wchar_t *,...)”: 不能将参数 1 从“const char [10]”转换为“const wchar_t *”
1> with
1> [
1> BaseType=wchar_t,
1> StringTraits=StrTraitMFC_DLL<wchar_t>
1> ]
1> 与指向的类型无关;转换要求 reinterpret_cast、C 样式转换或函数样式转换以下是程序片断:
void CCtrltestDlg::OnBnClickedButtonEqual()
{
// TODO: 在此添加控件通知处理程序代码
UpdateData(TRUE); double t = GetConvFactor();
CString strTemp; m_ltUnit2.GetText(m_ltUnit2.GetCurSel(),strTemp);
m_result.Format("%f",m_dbNumber*t);
m_result+=strTemp; UpdateData(FALSE);
}void CCtrltestDlg::OnCbnSelchangeComboUnit1()
{
// TODO: 在此添加控件通知处理程序代码
double t = GetConvFactor();
CString u1,u2,r; m_cbUnit1.GetLBText(m_cbUnit1.GetCurSel(),u1);
m_ltUnit2.GetText(m_ltUnit2.GetCurSel(),u2);
r.Format("%f%s=%f%s",1.0,u1,t,u2); m_ref.SetWindowText(r);
}void CCtrltestDlg::OnLbnSelchangeListUnit2()
{
// TODO: 在此添加控件通知处理程序代码
double t = GetConvFactor();
CString u1,u2,r; m_cbUnit1.GetLBText(m_cbUnit1.GetCurSel(),u1);
m_ltUnit2.GetText(m_ltUnit2.GetCurSel(),u2);
r.Format("%f%s=%f%s",1.0,u1,t,u2); m_ref.SetWindowText(r);
}
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货