zoukankan      html  css  js  c++  java
  • 加L“”

    error C2665: “AfxMessageBox”: 2 个重载中没有一个可以转换所有参数类型

    初学.net,编写如下代码运行,竟然提示错误(error C2665: “AfxMessageBox”: 2 个重载中没有一个可以转换所有参数类型)。

       代码:

       1   void CMouseMoveView::OnAppExit()
       2   {
       3     // TODO: 在此添加命令处理程序代码
       4     if(AfxMessageBox("是否真的要退出当前程序?",MB_YESNO)==IDYES)
       5     AfxGetMainWnd()->SendMessage(WM_CLOSE);
       6    }

     办法1: 将第4行改为:if(AfxMessageBox(_T("是否真的要退出当前程序?"),MB_YESNO)==IDYES)

           或者将第4行改为:if(AfxMessageBox(L"是否真的要退出当前程序?",MB_YESNO)==IDYES)

     办法2:选择“项目”菜单->项目属性->配置属性->常规->字符集,改为“未设置”即可。

    这是因为vs默认使用的是unicode字符编码集,而unicode要占2byte,通常的字符只占1byte,所以导致无法转换,故需要加上 _T 或 进行转换。

     
  • 相关阅读:
    A Famous City
    A Famous ICPC Team
    配置单元测试环境,找不到SenTestingKit
    linux解压.tar命令
    语音输入——科大讯飞
    查看dsym错误信息
    工程里关闭arc
    导入签名错误
    mac显示隐藏文件
    类uialertview弹出动画
  • 原文地址:https://www.cnblogs.com/wxl845235800/p/7376494.html
Copyright © 2011-2022 走看看