一般将编写类的文件和测试文件分开编写。
编写类的文件为 MyString.h;测试文件为 MyString.cpp。
首先,在 MyString.h 头文件中编写防卫式声明。
#ifndef __MYSTRING__
#define __MYSTRING__
···
#endif
这样做的好处是,不用考虑头文件的顺序。如果已经定义过 __MYSTRING__,则不会再次定义。
然后,开始编写 MyString 类。
class MyString
{
private:
char *m_data;
public:
MyString(const char *cstr = "");
MyString(const MyString &);
MyString &operator=(const MyString &);
char *print() const {
return m_data; }
~MyString() {
delete[] m_data; }
};
私有成员存放数据。在这个类中有一个指针存放字符串的地址。
公有成员存放函数。前两个函数是构造函数,第三个是重载 = 操作符。第四个是输出字符串到屏幕上。最后一个是析构函数。因为,在类中定义了一个指针,所在在析构函数中就要将指针释放,以免造成内存泄漏。
MyString::MyString(