首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >unicode中的QApplication

unicode中的QApplication
EN

Stack Overflow用户
提问于 2010-11-02 02:45:36
回答 2查看 1.9K关注 0票数 6

QApplication的构造函数接受(int argc,char**argv)来处理任何Qt特定的命令行参数。

如果我的应用程序是unicode怎么办?而我有一辆wchar_t** argv?

创建所有命令行参数的char*副本并将其传递给本身为unicode的库似乎有点傻。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2010-11-02 02:57:11

是的,就是这样。如果不是因为this note

警告:在Unix上,此列表是从传递给main()函数中的构造函数的argc和argv参数构建的。argv中的字符串数据是使用QString::fromLocal8Bit()解释的;因此,不可能在运行在Latin1语言环境中的系统上传递日语命令行参数。大多数现代Unix系统没有这个限制,因为它们是基于Unicode的。

在基于NT的Windows上,此限制也不适用。在Windows上,参数()不是从argv/argc的内容构建的,因为该内容不支持Unicode。相反,参数()是根据GetCommandLine()的返回值构造的。因此,arguments().at(0)给出的字符串可能不是Windows上的程序名,这取决于应用程序的启动方式。

诚然,我也不明白这个词。

票数 10
EN

Stack Overflow用户

发布于 2010-11-02 03:01:51

嗯,main总是会得到char** argv,所以这就是QApplication所期望的。您还可以转换它们(使用什么语言环境/编码?)如果要对命令参数执行其他操作,请将其设置为宽字符串。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4072016

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档