Qt 中文使用小結

近期開始接觸Qt,並開始着手用Qt開發。簡單記錄下開發中碰到的中文編碼的問題。


當中文在代碼編輯器中不能正常顯示的時候,可以選擇更改源文件爲GBK並按此格式保存。

1. 代碼中使用中文常量

:QStringLiteral("中文"):  QStringLiteral 是一個宏,參數爲const char*,返回的是一個QString類型

不是用QStringliteral的時候編譯會無法通過,這樣界面和代碼中都可以正常使用中文了。

2. 代碼中使用中文的字符串變量

:需要用到一個QString的中文字符串數組, 嘗試過用 QString str[] = {QStirngLiteral("中文"), QStringLiteral("英文")};,編譯會通不過並且不給出具體提示。

 通過查詢文檔才發現 MSVC2010 MSVC2012 編譯的時候無法使用這種方式來初始化一個QString的數組。   更高版本的MSVC以及GCC還未進行測試。。。

:如需使用帶中文的QString數組,可以使用QString提供的靜態方法 --- QString str[] = {QString::fromStdWString(L"中文", QString::fromStdWString(L"英文")};

 這樣一來,如果僅僅是在windows上使用的話,也可以採取使用QString::fromStdWString(L"") 這個方法來正常使用中文了。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章