为什么我无法在MFC中比较CString [英] Why i can't compare CString in MFC
问题描述
此行.
UpdateData(true);
if( m_OldPassword.Compare(d.pass) && m_NewPassword.Compare(m_ConfirmPassword) )
m_OldPassword,m_NewPassword,m_ConfirmPassword
m_OldPassword, m_NewPassword, m_ConfirmPassword
是我从EditControl中添加的变量
is variable i added from EditControl
m_OldPassword.Compare(d.pass)
结果= true(已测试)
m_OldPassword.Compare(d.pass)
Result =true (tested)
m_NewPassword.Compare(m_ConfirmPassword)
结果=否.
IMPLEMENT_DYNAMIC(ChangePassword, CDialog)
ChangePassword::ChangePassword(CWnd* pParent /*=NULL*/)
: CDialog(ChangePassword::IDD, pParent)
, m_OldPassword(_T(""))
, m_NewPassword(_T(""))
, m_ConfirmPassword(_T(""))
{
}
我不知道发生了什么.我确定我的输入(新的,确认的)是正确的.
I dont know what's happen. I sure my input(new, confirm) is right.
推荐答案
您需要做
if( m_OldPassword.Compare(d.pass)==0 && m_NewPassword.Compare(m_ConfirmPassword)==0 )
如果要比较两个Cstring,请说abc
和xyz
如果abc等于字符串xyz,它将返回0
如果abc大于字符串xyz,它将返回1
如果abc小于字符串xyz,它将返回-1
if you are comparing two Cstring say abc
and xyz
if abc equal to the string xyz it will return 0
if abc greater than the string xyz it will return 1
if abc less than the string xyz it will return -1
这篇关于为什么我无法在MFC中比较CString的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!