实现要实现:构造,析构,拷贝构造,赋值的功能
1. 提供构造函数 string(), string(const string & str),string(const char * str),
2. 析构函数: ~ string()
3. 成员函数(重载赋值函数):string &operator=(const string & str); 利用已有的string对象赋值
string & operator=(const char * str);// 直接用字符串赋值用char * 实现;
(返回引用,返回对象本身。 传入参数const & 常量引用,传入本身不能改)
4. 成员函数(处理字符串的成员函数):
size_t size() const; //返回常量
void swap(string & str);//交换两个字符串
5. 成员函数(操作符重载):
。。。。
#include <iostream> #include <utility> #include<stdio.h> #include <string.h> using namespace std; class String{ private: char * data_; public: size_t size()const { return strlen(data_); } const char * c_str() const{ return data_; } //无参的构造函数 String():data_(new char[1])//初始化类的成员data_,为初始化列表的方式。 { //初始化列表也可以表示为 // data_=new char[1]; *data_='