qt 字符集设置

pang2042 2010-01-19 01:15:57
我的开发环境是VS2008+QT ADDIN 。
创建一个新的QT项目后,编译正常,然后添加了一些其他源文件(原来设置是多字节字符集写的),编译就没法通过了。

错误提示如下:

1>D:\我的文档\Visual Studio 2008\Projects\DataStruct\FutureAccount.h(552) : error C2440: “=”: 无法从“char [256]”转换为“LPWSTR”
1> 与指向的类型无关;转换要求 reinterpret_cast、C 样式转换或函数样式转换
1>D:\我的文档\Visual Studio 2008\Projects\DataStruct\FutureAccount.h(556) : error C2440: “=”: 无法从“char [256]”转换为“LPCWSTR”
1> 与指向的类型无关;转换要求 reinterpret_cast、C 样式转换或函数样式转换

以往这种情况都是由于字符集设置为UNICODE引起的,重新设置项目为多字节字符集就能正常了。
但是在QT项目里,我把字符集设置改为”多字节字符集“还是不管用。
请教各位如何解决?
...全文
600 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
tingsking18 2010-01-20
  • 打赏
  • 举报
回复
把-d unicode去掉
pang2042 2010-01-20
  • 打赏
  • 举报
回复
把预编译选项里去掉UNICODE,可以了....谢谢各位
pang2042 2010-01-20
  • 打赏
  • 举报
回复
/Od /I ".\GeneratedFiles" /I "\include" /I ".\GeneratedFiles\Debug" /I "\include\QtCore" /I "\include\QtGui" /I ".\\" /I "D:\我的文档\Visual Studio 2008\Projects\DataStruct" /I "D:\我的文档\Visual Studio 2008\Projects\boost_1_40_0" /I "D:\我的文档\Visual Studio 2008\Projects\CTP_FILE" /I "D:\test" /D "UNICODE" /D "WIN32" /D "QT_LARGEFILE_SUPPORT" /D "QT_THREAD_SUPPORT" /D "QT_CORE_LIB" /D "QT_GUI_LIB" /D "_MBCS" /FD /EHsc /MDd /Zc:wchar_t- /Fo"Debug\\" /Fd"Debug\vc90.pdb" /nologo /c /Zi /TP /errorReport:prompt

这是现在我编译器的选项,里面确实有一个/D "UNICODE",但是我已经在VS项目属性里把字符集设置为“多字节字符集”了,但是这个选项还是在的....
pang2042 2010-01-20
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 tingsking18 的回复:]
把-d unicode去掉
[/Quote]

不好意思,我是刚接触,所以连你说的-d unicode选项在哪里都摸不清...麻烦再告知一下
dext 2010-01-19
  • 打赏
  • 举报
回复
替换 char 到 wchar
pang2042 2010-01-19
  • 打赏
  • 举报
回复
我习惯了用VS,所以直接在VS上装了QT插件
pywepe 2010-01-19
  • 打赏
  • 举报
回复
我都是用qt creator

16,199

社区成员

发帖
与我相关
我的任务
社区描述
Qt 是一个跨平台应用程序框架。通过使用 Qt,您可以一次性开发应用程序和用户界面,然后将其部署到多个桌面和嵌入式操作系统,而无需重复编写源代码。
社区管理员
  • Qt
  • 亭台六七座
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧