重写String类

转载 2015年07月10日 11:29:40
classs String
{
    private:
    char *m_data;   //数据成员
 
    public:
    String(const char *str = NULL)    //普通构造函数
    {
         if (str == NULL)
         {
             m_data = new char[1];
             *m_data = '\0';
         }
         else
         {
             int len = strlen(str);
             m_data = new char[len+1];
             strcpy(m_data, str);
         }
    }
 
    ~String()    //析构函数
    {
         delete []m_data; 
         m_data = NULL;
    }  
 
    String(const String &other)    //拷贝构造函数
    {
         int len = strlen(other.m_data);
         m_data = new char[len + 1];
         strcpy(m_data, other.m_data);
    }
 
    String& operate=(const String &other)    //赋值函数
    {
         if (&other == this)
         {
              return *this;
         }
         else
         {
              delete []m_data;
              m_data = NULL;
              int len = strlen(other.m_data);
              m_data  = new char[len+1];
              strcpy(m_data, other.m_data);
              return *this;
         }
    }

};


http://blog.chinaunix.net/uid-25132162-id-363106.html

C++之重写String类

C++之重写String类        有时候听完课程,不一定就能够领悟,所以还是要多加练习,今天在听了老师讲的C++关于类的构造函数,默认构造函数,类的拷贝函数(浅拷贝/深拷贝),类的析构函数,...
  • wxm349810930
  • wxm349810930
  • 2016年09月16日 08:25
  • 1090

关于String类中重写Object类中的方法

Object作为所有类的基类,它里面定义了许多的方法,最为常见的就是hashCode()、equals()、toString()方法。 一、hashCode()方法 首先来看一下什么是哈希码(Ha...
  • wulianghuan
  • wulianghuan
  • 2013年02月22日 15:35
  • 4094

为string类添加一个赋值运算符函数

面试中经常会被要求写一个string类,其实通过写string类就可以看出来一个人对C++的掌握能力。其实写string类主要就是看赋值运算符的重载函数的写法。在这里我自己实现了两种。如果大家有更好的...
  • gengdidi
  • gengdidi
  • 2016年05月06日 01:24
  • 906

简单探讨java中String类的hashCode()

对于了解哈希的小伙伴们来说,hashCode()这种函数的用处肯定再明白不过了,简单来说,它的作用就是将一个对象生成相应的hash码,在java中是一个int型整数,可以从我们熟悉的Object类中看...
  • sfqn_pgs
  • sfqn_pgs
  • 2016年03月12日 21:49
  • 2928

c++重写string类

这是第一次写的string类,可能会有些没有考虑到的问题,还请大神指导。。。。 //重写string类 #include #include using namespace std; class ...
  • rqc112233
  • rqc112233
  • 2016年03月02日 16:28
  • 258

c++ string类的完整实现!!!

c++ string类的完整实现,标注库有的功能这里基本都有,在此基础上可以进行良好的扩充!!!...
  • focusing_on_cpp
  • focusing_on_cpp
  • 2015年06月29日 07:58
  • 5482

String类中自动重写compareTo( )方法对汉字的比较

博主的更多文章>>  String类中自动重写compareTo( )方法对汉字的比较 2016-09-24 09:23:29 转载自:http://a001807.blog....
  • Lily_sayhi
  • Lily_sayhi
  • 2017年07月18日 17:50
  • 404

C++ MyString类的简单实现

题目:string类的简单实现,本文中此类名为MyString 实现思路: 1 只要构造函数执行成功(其中pData_不为空) 2 构造函数可通过char*,字符串常量构造 3 重载运算符=(返回值为...
  • u013507368
  • u013507368
  • 2015年08月30日 22:55
  • 2328

重写toString()方法

学习Java的人都知道,Java所有类都是object的子类。所以,所有的Java对象都可以调用object类提供的方法。其中,toString()就是其中一个。下面讲解一下为什么会有重写toStri...
  • u011209223
  • u011209223
  • 2016年10月09日 09:58
  • 975

实现自己的类加载时,重写方法loadClass与findClass的区别

Java中的类加载器,有启动类加载器(Bootstrap Classloader)、扩展类加载器(Launcher$ExtClassLoader)、应用程序类加载器(Launcher$AppClass...
  • fenglibing
  • fenglibing
  • 2013年12月21日 20:51
  • 22535
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:重写String类
举报原因:
原因补充:

(最多只允许输入30个字)