当前位置: 首页 > news >正文

我公司要网站建设长沙游戏推广

我公司要网站建设,长沙游戏推广,广州公司核名在哪个网站,深圳公租房官网在Qt中#xff0c;一般习惯使用qDebug信息进行输出和打印调试信息到console或者文件中#xff0c;在qDebug中#xff0c;也有一些小技巧#xff0c;可以帮助我们更好的使用qDebug打印日志记录#xff0c;本文分享了qDebug使用的一些小技巧。 1. 打印出文件名、行号、调用函… 在Qt中一般习惯使用qDebug信息进行输出和打印调试信息到console或者文件中在qDebug中也有一些小技巧可以帮助我们更好的使用qDebug打印日志记录本文分享了qDebug使用的一些小技巧。 1. 打印出文件名、行号、调用函数等上下文信息 有些时候是不是可能会遇见这样的事情自己不知道在哪儿打印了一串debug信息但是现在不知道在哪儿了并且由于文件很多比较难以寻找。本次提到的方法就可以解决这个问题。首先要明白一件事打印出行号、文件名一定要在调用qDebug时就知道当前位置C语言是通过 __FILE__ __LINE__ 这些东西得到的而qDebug也是一样的方式它是一个宏实现是这个样子的。 #define qDebug QMessageLogger(QT_MESSAGELOG_FILE, QT_MESSAGELOG_LINE, QT_MESSAGELOG_FUNC).debug #define qInfo QMessageLogger(QT_MESSAGELOG_FILE, QT_MESSAGELOG_LINE, QT_MESSAGELOG_FUNC).info #define qWarning QMessageLogger(QT_MESSAGELOG_FILE, QT_MESSAGELOG_LINE, QT_MESSAGELOG_FUNC).warning #define qCritical QMessageLogger(QT_MESSAGELOG_FILE, QT_MESSAGELOG_LINE, QT_MESSAGELOG_FUNC).critical #define qFatal QMessageLogger(QT_MESSAGELOG_FILE, QT_MESSAGELOG_LINE, QT_MESSAGELOG_FUNC).fatal而其中 #define QT_MESSAGELOG_FILE __FILE__ #define QT_MESSAGELOG_LINE __LINE__ #define QT_MESSAGELOG_FUNC Q_FUNC_INFO所以qDebug 本身应该是支持了打印上下文信息的但是为什么我们平时打印的信息没有呢 这个是因为需要去设置一下message的pattern 设置pattern有两种方法 qSetMessagePattern 函数 通过函数设置格式例如: qSetMessagePattern([%{type}]%{file}:%{line}\t%{time}\t%{function}\n%{message}) QT_MESSAGE_PATTERN 环境变量 通过设置全局环境变量或者使用qputenv(QT_MESSAGE_PATTERN, [%{type}]%{file}:%{line}\t%{time}\t%{function}\n%{message});的手法来设置pattern 或者换个思路qt为我们提供了一个handle使用 qInstallMessageHandler设置 void msgHandle(QtMsgType type, const QMessageLogContext context, const QString msg) {printf(Debug: %s (%s:%u, %s)\n, localMsg.constData(), context.file, context.line, context.function); }qInstallMessageHandler(msgHandle); 2. 将qDebug内容输出到文件中 将qDebug输出到文件当中则是直接采用 qInstallMessageHandler的思路来做在这个函数中将printf改成fprintf即可。 3. 正式运行时屏蔽掉 debug 信息 在qlogging.h中有一段代码 #if defined(QT_NO_DEBUG_OUTPUT) # undef qDebug # define qDebug QT_NO_QDEBUG_MACRO #endif意味着其实当定义了上面的qDebug宏后其实下面还有宏条件重新定义展开看看 QT_NO_QDEBUG_MACRO则是 #define QT_NO_QDEBUG_MACRO while (false) QMessageLogger().noDebug所以我们在编译时加入一个宏即可pro文件直接写法如下 DEFINES QT_NO_DEBUG_OUTPUT
http://www.pierceye.com/news/414490/

相关文章:

  • 移动网站建设价格线上推广专员是干嘛的
  • 做化妆刷的外贸网站企业网站托管备案
  • 湖南省建设干部学校 网站金融直播室网站建设
  • 贵州建设厅特殊工种考试网站photoshop平面设计教学视频
  • 怎么推广我的网站代理网站推荐
  • wordpress主题站模板做网站跟做APP哪个容易
  • 杭州网站建设公司推荐网站建设优化服务渠道
  • php是网站开发语言吗做网站前端需要编程基础吗
  • python 网站开发 前端企业信用信息系统官网
  • 公司网站设计有哪些使用技巧呢商城网站建设怎么收费
  • 东莞做网站平台安阳营销型网站建设
  • 如何查看网站开发语言百度排行榜风云榜
  • 泉州 网站建设公司首选广告设计公司名字有寓意有创意
  • 天津个人做网站慈利网站制作
  • 专门做推广的网站吗宿迁房价2023年最新房价
  • 0基础12天精通网站建设网站建设 全网推广
  • 东莞网站营销推广公司移动应用开发案例
  • 妇科医院网站建设怎么做网站建设培训心得体会
  • 网站建设 管理正能量网站入口地址
  • 做网站没有创意Wordpress国际收款
  • 网站推广关键词工具wap网站分享到微信
  • 哪个网站可以给图片做链接做网站的公司在哪
  • 搬瓦工可以长期做网站广告制作开票大类是什么
  • 高级网站开发工信部小企业门户网站建设
  • 网站建站知识秦皇岛汽车网站制作
  • 建站之星极速版app开发需求
  • .net域名可以做银行网站吗做网站用模版
  • 嘉兴市平湖市建设局网站品牌设计公司 知乎
  • jfinal网站开发模板app开发网站
  • 成都和奇乐网站建设公司怎么样研发网站要多久