解決QT編程出現 C2001錯誤
最近做項目時,在debug輸出或者是在其他用到字符串常量的時候,總會時不時的出現C2001錯誤,提示“常量中有換行符”,
比如
tr("刪除此設備")
或者
qDebug()<<"重命名";
我去你妹的,哪裏有換行符啊,能找出來算我輸,嘗試了各種改正也沒解決,還以為自己發現了QT的一個隱藏BUG,最終
通過以下步驟解決了這個錯誤:
選擇QT界面菜單欄----編輯----Slect Encoding...-----System-----按編碼保存。
但是問題又出現了,編譯器不報錯了,可運行程序後程序裏面出現的中文字符是亂碼,所以這個方法也不可行。
最後通過網上各種百度,最終找到了3種解決方式:
1、將字符中的中文字符用英文字母或單詞代替,這樣解決的好處是代碼規範,語言統一,缺點就是沒有中文表達那樣直接、
清晰(對於英語白癡的我來說)。
2、使用中文字符常量時,用QStringLiteral修飾中文字符,格式如QStringLiteral("中文字符"),這種方法必須在每次使用中
文字符時都需要進行修飾,否則還是會出現錯誤,所以比較麻煩。
3、直接在頭文件聲明處添加 #pragma execution_character_set("utf-8"),直接解決此錯誤。
希望對您有所幫助,謝謝。
解決QT編程出現 C2001錯誤
相關推薦
解決QT編程出現 C2001錯誤
通過 字符常量 提示 進行 中文字符 字符 謝謝 統一 文件 最近做項目時,在debug輸出或者是在其他用到字符串常量的時候,總會時不時的出現C2001錯誤,提示“常量中有換行符”, 比如 tr("刪除此設備") 或者 qDebug()<<"重命名"; 我去你妹
Qt 編程指南 4 按鈕2 打開網頁和文件夾
dir 地址 cpp 創建項目 當前 char obj mage bug 功能: 按鍵打開文件夾和網頁 效果: 教程 1 添加兩個鏈接按鈕 分別命名 commandLinkButtonFolder 和 commandLinkBut
Qt 編程指南 7 添加背景
cat http cnblogs exe .cn idg 添加 llb 指定 、 #include "QT_Text1.h" #include <QtWidgets/QApplication> #include <QBitmap>
Qt 編程指南 9 軟件打包
exe 自動生成 三方 安裝 目錄 1.3 雙擊 ces 對話 平臺 使用此一樣例說明所有打包過程 VS2013 QT Opencv2.4.1.3(64位) 1、Qt Widgets Application可執行程序發布方式 1.1 用 QtCre
解決無法啟動mysql出現1069錯誤
本地 mage log body info blog 右鍵 alt clas 之前在服務器上修改了my.ini文件 mysql就一直無法啟動 後來把my.ini改回原來的,還是無法啟動並報1069錯誤 在網上查了一下,基本上都是說修改mysql密碼,再重新啟動,試了一下沒
解決安裝vcredist_x86 C++出現的錯誤問題Command line option syntax error. Type Command
今天安裝WindowsforLua時 出了點小問題 Lua 提示網路失敗 ,原因 其實就是沒有裝 x86的vcredist_x https://www.microsoft.com/zh-cn/download/details.aspx?id=5638 這是下載地址
解決AS混淆時出現的錯誤Execution failed for task ':app:transformClassesAndResourcesWithProguardForRelease'
在整合騰訊buglySDK的時候出現的這個問題。順帶提一下bugly。這玩意最近騰訊更新SDK它集成了微信開源的熱修復框架技術Tinker。更多關於微信Tinker整合可以看這裡 開發者以後可以更加方便的使用熱修復功能以及bugly其他的功能。非常方便。在此對於將準備整
[Go] 使用go語言解決現代編程難題
功能 方法 性能 channel 垃圾回收 垃圾回收器 ann ava 同步 1.計算機一直在演化,64核,128核等等,但是我們依舊在使用為單核設計的技術編程2.Go語言讓分享自己的代碼包更容易3.Go語言重新思考傳統的面向對象,提供了更高效的復用代碼手段4.Go不僅提供
完美解決mysql儲存中文出現1366錯誤
最近在使用sqlalchemy將中文存放至mysql資料庫的表中時出現:Warning Code :1366 Incorrect string value: '\xE5\x9C\xA8' for column 'content' at row 1這是因為我們存放的中文,而我們
IIS出現“HTTP 錯誤 500.0,C:phpphp-cgi.exe - FastCGI 進程意外退出”解決方法
c++ pdo_mysq img str 同學 打開 就是 命令 x64 昨天給大家介紹了在windows+iis的平臺上搭建支持php+mysql平臺的文章,教程步驟都是筆者一步一個操作然後一個記錄介紹給大家的,實機演練,教程絕對切實可用,但是不同的同學在不同的環境下
Qt Creator 編譯 ROS 包出現連結錯誤解決辦法
若編譯過程中,出現 cannot find -ltf cannot find -lroscpp ... 主要是因為 Qt 編譯 ROS 後連結環節出現問題,主要原因是 Qt 啟動時沒有載入 ROS 相關的環境變數,解決辦法如下: sudo vim /usr/share/ap
編譯qt工程時出現qt外掛程序退出錯誤的解決辦法
真名:朱金燦 主要經歷:本科畢業於CUG(武漢)的GIS專業,畢業後參加工作,現在在北京從事軟體開發和團隊管理工作。曾獲有色金屬工業科技進步獎二等獎(獲獎證書連結)。 我的聯絡方式: EMAIL:clever101#163.com 研究方向: 數字影象處理、計算機圖形學。 本部落格內
Ubuntu使用qt編譯時出現cannot find -lGL錯誤解決辦法
使用qtcreator編譯時出現:-1: error: cannot find -lGL這樣的錯誤, 這是由於缺少連結庫原因造成的,使用下面命令: sudo apt-get install libqt4-dev 或者 sudo apt-get install libgl1-mesa-dev
ROS(基於RK3399)執行rbx1例程出現 cv2.cv import no module cv錯誤的解決辦法
最近入手了RK3399 ,在上面裝了ROS執行成功以後,為了進一步測試RK3399的效能,想執行下ros by example 下的rbx1中的rbx1_vision 包 ,結果在執行roslaunch rbx1_vision face_tracker.
【原創】QT:編譯時出現 “error: error writing to -: Invalid argument”錯誤的解決
今天用QT5進行編譯工程時,IDE的“問題”視窗提示 “error: error writing to -: Invalid argument”。 上網一番搜尋,也沒有找到方案。 於是,想起偉
Qt Quick編程(1)
參數表 核心 參數 boolean push 不同之處 ++ 只讀 部分 說道QML,不得不先說一下ECMAScript: ECMAScript語言的標準是由Netscape、Sun、微軟、Borland等公司基於JavaScript和JScript錘煉、定義出來的。 EC
解決QT:forward declaration of 'struct Ui::xxx';invalid use of incomplete struct "Ui::Widget" 等莫名奇異錯誤
執行 center dex text nco jsb ims complete class 今天在進行QT Widget的UI設計時,改了下Widget的對象名,然後在多次成功編譯執行後,執行清理,又一次構建,就出現了好多莫名奇異的錯誤: widget.
基於Qt的OpenGL可編程管線學習(3)- 使用Instanced方式繪制
qt opengl shader instanced 繪制多個重復的模型時,使用Instanced方式繪制可以大大加快顯然速度。繪制效果如下圖所示:1、Vertex Shader中定義如下:attribute vec3 pos; attribute vec2 coord; attribute
基於Qt的OpenGL可編程管線學習(9)- X射線
qt opengl shader x射線 X射線也就是輪廓線,效果如下圖所示原理:物體表面的法線與人眼睛縮成的角度為90度時,剛好能看到物體的輪廓Fragment shader代碼如下:uniform sampler2D U_MainTexture; varying vec2 M_coord
基於Qt的OpenGL可編程管線學習(5)- FBO的使用
qt opengl shader fbo FBO: Frame Buffer Object,默認繪制在1號FBO中,自定義的FBO是可以做讀寫操作的。繪制到自定義的FBO,然後顯示出來,如下圖所示:Qt中有關於FBO的類,QOpenGLFrameBufferObjectFBO的創建m_Fram