#include <iostream>
#include <cstring>
using namespace std;
class mystring
{
private:
char *str;//字符串
int size;//字符串长度
public:
//无参构造
mystring():size(10)
{
str = new char[size];
cout<<"无参函数"<<endl;
}
//有参构造
mystring(const char *s)
{
size = strlen(s);
str =new char[size+1];
strcpy(str,s);
cout<<"有参构造"<<endl;
}
//拷贝构造
mystring(const mystring & other)
{
size = other.size;
str = new char[size+1];
strcpy(str,other.str);
cout<<"拷贝构造"<<endl;
}
//析构函数
~mystring()
{
delete []str;
cout<<"析构函数"<<endl;
}
//判空函数
bool empty()
{
if(strlen(str) == 0)
{
return true;
}
else
{
return false;
myString,将重载的运算符进行重载
最新推荐文章于 2024-10-08 00:02:21 发布
该文章展示了如何在C++中创建一个名为mystring的自定义字符串类,包括无参构造、有参构造、拷贝构造和析构函数的实现。类中还包括了字符串长度、判空、显示、字符访问以及各种比较运算符的重载。此外,还实现了全局的输入输出流操作符重载和示例代码来演示类的功能。
摘要由CSDN通过智能技术生成