关于“不能将参数1 从“CString”转换为“const char *””的一些思考
来源:互联网 发布:免费顶级域名ml 编辑:程序博客网 时间:2024/05/26 12:00
MFC开发时经常会遇到CString、string/std::string、char*等类型相互转换的问题,现将一些思考与心得记下来与大家分享:
①CString强制类型转换为const char*,在变量前加上:(char *)(LPCTSTR),这样做虽不会报错,但其转换后的值可能是乱码,不推荐这样做!
②利用中间变量(string类型),原理:
1)CString类型不能自动装换为const char*。
2)const char*类型可自动装换为CString。
3)std::string类型调用c_str()方法就可轻松转换为const char*。
4)CString与std::string相互转换:
CString cs("Hello");
std::string s((LPCTSTR)cs);
std::string s("Hello");
CString cs(s.c_str());
综上,所以一般需要const char*类型时可用string变量转换,而需要CString类型时则直接用const char*类型赋值。应尽量避免CString转换为const char *的情况!
- 关于“不能将参数1 从“CString”转换为“const char *””的一些思考
- 关于“不能将参数1 从“CString”转换为“const char *””的一些思考
- 不能将参数 1 从“CString”转换为“const char *”
- 不能将参数1从“CString”转换为“const char *”
- 不能将参数 1 从“CString”转换为“const char *”
- 不能将参数 1 从“CString”转换为“const char *”
- 不能将参数 1 从“CString”转换为“const char *
- 不能将参数 1 从“CString”转换为“const char *”
- 关于CString剖析,“strcmp”: 不能将参数1从“CString”转换为“const char *”问题
- 关于CString剖析,“strcmp”: 不能将参数1从“CString”转换为“const char *”问题
- 关于CString剖析,“strcmp”: 不能将参数1从“CString”转换为“const char *”问题
- 关于CString剖析,“strcmp”: 不能将参数1从“CString”转换为“const char *”问题
- 关于CString剖析,“strcmp”: 不能将参数1从“CString”转换为“const char *”问题
- 关于CString剖析,"strcmp": 不能将参数1从"CString”"转换为"const char *"问题
- inet_addr”: 不能将参数 1 从“CString”转换为“const char *”1>
- pcap_open_offline”: 不能将参数 1 从“CString”转换为“const char*
- error C2664: “fopen”: 不能将参数 1 从“CString”转换为“const char *”
- “atof”: 不能将参数 1 从“CString”转换为“const char *”
- Shell变量的使用
- mfc ado like不出数据
- HTML 纯CSS图片放大效果
- 基本排序之插入排序
- vb获取、创建数据库及包含表和字段名
- 关于“不能将参数1 从“CString”转换为“const char *””的一些思考
- 解决“Cannot merge new index 67208 into a non-jumbo instruction”的问题
- 基于SuperMap iClient加载WMTS服务
- WBS
- The DirectFB screen driver functionality test failed
- 快速排序
- <span>文字居中
- IOS 各种文件路径获取
- poj 2761 Feed the dogs 平衡树,线段树,树状数组