error C2664: “void ATL::CStringT<BaseType,StringTraits>::Format(const wchar_t *,...)”: 不能将
来源:互联网 发布:linux 查看cpu几核 编辑:程序博客网 时间:2024/06/05 04:10
error C2664: “void ATL::CStringT<BaseType,StringTraits>::Format(const wchar_t *,...)”: 不能将
error C2664: “void ATL::CStringT<BaseType,StringTraits>::Format(const wchar_t *,...)”: 不能将参数
//==============使用CString类,需包含以下头文件=====CString类是MFC中的类==============================
#include "string"
#include "afx.h"
//所在CString类,只要是在MFC项目中,均可使用CString类。
//=================================================
error C2664: “void ATL::CStringT<BaseType,StringTraits>::Format(const wchar_t *,...)”: 不能将参数 1 从“const char [11]”转换为“const wchar_t *”
报错代码:
int k=m_grid.GetItemCount();
//CString str_totalcount=L"总共:"+(CString)(k)+"行";
str_totalcount.Format("总共:%d行",k);
修正之后:
int k=m_grid.GetItemCount();
//CString str_totalcount=L"总共:"+(CString)(k)+"行";
str_totalcount.Format(_T("总共:%d行"),k);
//===================================================
在VC 6.0或者VC++2003中的代码运行正常,现在用2005运行程序出了错误,MouseDemoView.cpp
e:\c++.net\hwl\mousedemo\mousedemo\mousedemoview.cpp(109) : error C2664: “void ATL::CStringT<BaseType,StringTraits>::Format(const wchar_t *,...)”: 不能将参数 1 从“const char [26]”转换为“const wchar_t *”
with
[
BaseType=wchar_t,
StringTraits=StrTraitMFC_DLL<wchar_t>
]
与指向的类型无关;转换要求 reinterpret_cast、C 样式转换或函数样式转换
e:\c++.net\hwl\mousedemo\mousedemo\mousedemoview.cpp(121) : error C2664: “void ATL::CStringT<BaseType,StringTraits>::Format(const wchar_t *,...)”: 不能将参数 1 从“const char [26]”转换为“const wchar_t *”
with
[
BaseType=wchar_t,
StringTraits=StrTraitMFC_DLL<wchar_t>
]
与指向的类型无关;转换要求 reinterpret_cast、C 样式转换或函数样式转换
e:\c++.net\hwl\mousedemo\mousedemo\mousedemoview.cpp(132) : error C2039: “formt”: 不是“ATL::CStringT<BaseType,StringTraits>”的成员
with
[
BaseType=wchar_t,
StringTraits=StrTraitMFC_DLL<wchar_t>
]
生成日志保存在“file://e:\C++.net\hwl\mousedemo\mousedemo\Debug\BuildLog.htm”
这个转换问题怎么解决,希望各位说一下
UNICODE转换问题,在VC2005中主要使用UNICODE编码,需要这样写:
strMemStat.Format(_T("%d"), 255);
在UNICODE或者ASCII编码都能使用。
所以在VS2005 或者VS2008中,遇到一些输出等函数时,可能需要在前面加入一些符号
比如有:_T或者TEXT等等
error C2664: “void ATL::CStringT<BaseType,StringTraits>::Format(const wchar_t *,...)”: 不能将参数
//==============使用CString类,需包含以下头文件=====CString类是MFC中的类==============================
#include "string"
#include "afx.h"
//所在CString类,只要是在MFC项目中,均可使用CString类。
//=================================================
error C2664: “void ATL::CStringT<BaseType,StringTraits>::Format(const wchar_t *,...)”: 不能将参数 1 从“const char [11]”转换为“const wchar_t *”
报错代码:
int k=m_grid.GetItemCount();
//CString str_totalcount=L"总共:"+(CString)(k)+"行";
str_totalcount.Format("总共:%d行",k);
修正之后:
int k=m_grid.GetItemCount();
//CString str_totalcount=L"总共:"+(CString)(k)+"行";
str_totalcount.Format(_T("总共:%d行"),k);
//===================================================
在VC 6.0或者VC++2003中的代码运行正常,现在用2005运行程序出了错误,MouseDemoView.cpp
e:\c++.net\hwl\mousedemo\mousedemo\mousedemoview.cpp(109) : error C2664: “void ATL::CStringT<BaseType,StringTraits>::Format(const wchar_t *,...)”: 不能将参数 1 从“const char [26]”转换为“const wchar_t *”
with
[
BaseType=wchar_t,
StringTraits=StrTraitMFC_DLL<wchar_t>
]
与指向的类型无关;转换要求 reinterpret_cast、C 样式转换或函数样式转换
e:\c++.net\hwl\mousedemo\mousedemo\mousedemoview.cpp(121) : error C2664: “void ATL::CStringT<BaseType,StringTraits>::Format(const wchar_t *,...)”: 不能将参数 1 从“const char [26]”转换为“const wchar_t *”
with
[
BaseType=wchar_t,
StringTraits=StrTraitMFC_DLL<wchar_t>
]
与指向的类型无关;转换要求 reinterpret_cast、C 样式转换或函数样式转换
e:\c++.net\hwl\mousedemo\mousedemo\mousedemoview.cpp(132) : error C2039: “formt”: 不是“ATL::CStringT<BaseType,StringTraits>”的成员
with
[
BaseType=wchar_t,
StringTraits=StrTraitMFC_DLL<wchar_t>
]
生成日志保存在“file://e:\C++.net\hwl\mousedemo\mousedemo\Debug\BuildLog.htm”
这个转换问题怎么解决,希望各位说一下
UNICODE转换问题,在VC2005中主要使用UNICODE编码,需要这样写:
strMemStat.Format(_T("%d"), 255);
在UNICODE或者ASCII编码都能使用。
所以在VS2005 或者VS2008中,遇到一些输出等函数时,可能需要在前面加入一些符号
比如有:_T或者TEXT等等
0 0
- error C2664: “void ATL::CStringT<BaseType,StringTraits>::Format(const wchar_t *,...)”: 不能将
- error C2664: 'void ATL::CStringT<BaseType,StringTraits>::Format (...)
- error C2664: “ATL::CStringT<BaseType,StringTraits>::Remove”: 不能将参数 1 从“const char [2]”转换为“char”
- Debug编译运行都没有问题,Release编译错误error C2664: 'ATL::CStringT<BaseType,StringTraits>::CStringT(const VARIANT
- VS2010 编码问题 不能将参数 1 从“ATL::CStringT<BaseType,StringTraits>”转换为“const char *”
- error C2440: “初始化”: 无法从“wchar_t *”转换为“ATL::CStringT<BaseType,StringTraits>”
- error C2440: “初始化”: 无法从“wchar_t *”转换为“ATL::CStringT<BaseType,StringTraits>”
- error C2440: “初始化”: 无法从“const char *”转换为“ATL::CStringT<BaseType,StringTraits>”
- error C2039: “SetWindowTextA”: 不是“ATL::CStringT<BaseType,StringTraits>”的成员
- Bug3 ---error C2039: “SetWindowTextA”: 不是“ATL::CStringT<BaseType,StringTraits>”的成员
- 解决:错误1error C2440: “初始化”: 无法从“char *”转换为“ATL::CStringT<BaseType,StringTraits>
- error C2440: 'initializing' : cannot convert from 'const char [11]' to 'ATL::CStringT<BaseType,Strin
- error C2664: 不能将参数 1 从“const char [3]”转换为“const wchar_t *”
- error C2664: “fopen”: 不能将参数 1 从“const char [ ]”转换为“const wchar_t
- “ATL::CStringT<BaseType,StringTraits>::operator +”: 3 个重载有相似的转换
- VC6转VC8出现问题:error C2664: “fopen”: 不能将参数 1 从“const char [ ]”转换为“const wchar_t *”
- “warning C4251::CStringT<BaseType,StringTraits>需要有 dll 接口”解决办法
- error C2664: “void std::basic_fstream<_Elem,_Traits>::open(const wchar_t *,std::ios_base::openmode,
- margin:0 auto 与 text-align:center 的区别
- 互联网基本概念
- iOS-AVAudioRecorder、EMCDDeviceManager 报错解决方法
- WinForm(C#)中MDI子窗体最大化的问题
- 转移到java下工作
- error C2664: “void ATL::CStringT<BaseType,StringTraits>::Format(const wchar_t *,...)”: 不能将
- WebService 超简单入门教程
- springMvc 中 Excel批量数据上传,利用POI解析数据保存入数据库 及模板文件下载
- Struts2工作原理
- cxxnet学习笔记2
- my.cnf 主要参数详解
- 黑马程序员-------小数运算之BigDecimal
- Java根据sessionId获取Session对象
- 硬件电路设计之电源