📄 qdebugstream.cpp
字号:
#include "qdebugstream.h"#include <qstring.h>QDebugStream::QDebugStream(std::ostream &stream) : m_Stream(stream) { m_OldBuf = stream.rdbuf(); stream.rdbuf(this);}int QDebugStream::overflow(int_type v) { if (v == '\n') { qDebug(m_String.c_str()); m_String.clear(); } else m_String.push_back(v); return v;}std::streamsize QDebugStream::xsputn(const char *p, std::streamsize n) { m_String.append(p, p + n); unsigned int pos = 0; while (pos != std::string::npos) { pos = m_String.find('\n'); if (pos != std::string::npos) { std::string tmp(m_String.begin(), m_String.begin() + pos); qDebug(tmp.c_str()); m_String.erase(m_String.begin(), m_String.begin() + pos + 1); } } return n;}QDebugStream::~QDebugStream() { // output anything that is left if (!m_String.empty()) qDebug(m_String.c_str()); m_Stream.rdbuf(m_OldBuf);}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -