vc2008 mfc 笔记

1. 在vc2010中format(“_T(%d)”,i)这样的格式 为什么要调用字符集而vc6.0就能直接用format(“%d‘,i)?
在vs2010中默认的项目属性中“字符集”使用的是“unicode字符集”。而在vc6中使用的则是“多字节字符集”。只要将vs项目属性的字符集改成“使用多字节字符集”,就可以了。

加上_T(""), 可以自适应unicode或多字节的编译环境改变.保证兼容性。


2. CMainFrame类和C...View类均继承自CWnd类


3. C...App类不是继承自CWnd类,所以没有MessageBox函数,但 可以用 AfxMessageBox("内容");

C...Doc类也不是继承自CWnd类,同样可用 AfxMessageBox("内容");

对一个菜单项,在View,Doc,MainFrameApp四个类中,同时增加响应函数的时候,响应的优先次序是:View 高于 Doc 高于 MainFrame 高于 App 类


4. string求长度时,英文字符按1加,中文字符和汉字按2加;

若想让英文字符,中文字符和汉字都按1加,可先将其转成cstring

string input = "1234 :一个测";//注意:(:前有个空格)
CString cstrInput(input.c_str());

int iSize = input.length();//13
int iLen = cstrInput.GetLength();//9
CString strRight = cstrInput.Right(2);//个测
CString strLeft = cstrInput.Left(6);//1234 :

因为 CString 其实是宽字符,因为CString直接赋值时要用_T("...");转换

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值