首先,生产与消费的内容为自定义的一个简单的string类
自定义string类的实现如下
CMystring.h
#ifndef GUARD_CMYSTRING_H
#define GUARD_CMYSTRING_H
class CMyString {
public:
CMyString(const char* pData=NULL);
CMyString(const CMyString& other);
~CMyString();
CMyString& CMyString::operator=(const CMyString &str);
void print();
private:
char* m_pData;
};
#endif
CMyString.cpp
#include <string.h>
#include <iostream>
#include "CMyString.h"
CMyString::CMyString(const char *pData)
{
if (pData == NULL) {
m_pData = new char[1];
*m_pData = '\0';
}
else {
int length = strlen(pData);
m_pData = new char[length + 1];
strcpy(m_pData, pData);
}
}
CMyString::CMyString(const CMyString &other)
{
int length = strlen(other.m_pData);
m_pData = new char[length + 1];
strcpy(m_pData, other.m_pData);
}
CMyString::~CMyString()
{
delete[] m_pData;
}
CMyString&