C++程序执行路径日志打印

C++程序执行路径日志打印

在调试程序过程中,当程序在某句代码崩溃了,要想排查问题原因,除了拿到.dmp文件看堆栈信息之外,另外就是打印日志。在这篇文章,我就来说说从日志将问题缩小到问题函数。
其实原理很简单,局部变量的作用于就存在于函数体范围内,在刚进入函数时新建对象,出函数析构对象,与此同时打印信息。

代码如下:
class myLog
{
public:
myLog(QString strFunc, QString strInfo)
{
m_strFunc = strFunc;
if(!strInfo.isEmpty())
{
strFunc=strFunc+strInfo;
}
qDebug()<<”enter func”+strFunc;
};
~myLog(){qDebug()<<”leave Func”+strFunc;};
private:
QString m_strFunc;
}
/#define TraceLog(info) myLog log(FUNCTION, info);
/#define TraceLogNo() myLog log(__FUNCTION,”“);


  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值