介绍
MyString重载了+,+=,=,D,<<,>>.length,MyStrlen,MyStrcpy,MyStrcat的功能
源码
main.cpp
#include<iostream>
#include "MyString.h"
using namespace std;
void main()
{
//构造测试
MyString s;
cout << s;
MyString s1 = "一航";
cout << s1 << endl;
// + 运算符重载测试
MyString str = "str";
MyString str2 = "str2";
str + str2;
cout << str << endl;
cout << str2 << endl;
// += 运算符重载测试
MyString temp;
temp +=str2;
cout << temp << endl;
system("pause");
}
MyString.h
#pragma once
#include<iostream>
using namespace std;
class MyString
{
friend ostream& operator<<(ostream& out, MyString& data);
friend istream& operator>>(istream& in, MyString& data);
public:
//返回字符串大小
size_t length();
//获取字符串长度
size_t MyStrlen(const char* str);
//拷贝字符串
char MyStrcpy(char *dest, const char *src);
public:
// + 运算符重载
const MyString operator +(const MyString& Right)const;
// = 运算符重载
MyString& operator=(const MyString& Right);
// += 运算符重载
MyString& operator+=(const MyString& Right);
// [] 运算符重载
const char& operator[]<