⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 qbuffer.h

📁 PIXIL is a small footprint operating environment, complete with PDA PIM applications, a browser and
💻 H
字号:
#ifndef __QBUFFER_H#define __QBUFFER_H#include "qiodevice.h"class QByteArray{ protected:  const char * m_Buffer;  unsigned int m_nSize; public:  QByteArray () { m_Buffer = 0; m_nSize =0 ;}  ~QByteArray() { delete [] m_Buffer; }  QByteArray(const QByteArray & a)    {      m_Buffer =0;       m_nSize=0;      if(a.buffer() && a.length())	assign(a.buffer(),a.length());    }  QByteArray & assign(const char * a, unsigned int n)     {       if(m_Buffer)	delete [] m_Buffer;      m_Buffer = new char [n];      memcpy((char*)m_Buffer,a,n);      m_nSize = n;      return *this;     }  unsigned int length() const { return m_nSize; }  const char * buffer() const { return m_Buffer; }};class QBuffer : public QIODevice{ protected:  QByteArray m_Buffer; public:  QBuffer() { }  QBuffer(const QBuffer & b) : m_Buffer(b.m_Buffer) { }  virtual ~QBuffer() { }  virtual int readBlock(char * data, unsigned int  maxlen)    {      unsigned int len = (m_Buffer.length() > maxlen ? maxlen : m_Buffer.length());      memcpy(data,m_Buffer.buffer(),len );            return len;    }  virtual int writeBlock( const char * data, unsigned int len)    {      m_Buffer.assign(data,len);      return 0;    }  QByteArray buffer() const { return m_Buffer; }};#endif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -