最常考的笔试题: MyString实现

来源:互联网 发布:windows xp镜像 编辑:程序博客网 时间:2024/05/19 19:58

题目:实现下面接口

class MyString{public:    MyString(const char * data = NULL);    MyString(const MyString & other);    MyString & operator = (const MyString & rhs);    ~MyString();private:    char * m_data;};


解答:

static char * copy_string(const char * data){    if (NULL == data)    {        data = "";    }    int len = strlen(data);    char * dup_data = new char [len + 1];    if (NULL != dup_data)    {        strcpy(dup_data, data);    }    return(dup_data);}MyString::MyString(const char * data)    : m_data(copy_string(data)){}MyString::MyString(const MyString & other)    : m_data(copy_string(other.m_data)){}MyString & MyString::operator = (const MyString & rhs){    if (&rhs != this)    {        MyString temp(rhs);        std::swap(m_data, temp.m_data);    }    return(*this);}MyString::~MyString(){    delete [] m_data;}


 

 

本来是很喜欢笔试这一环节的,但发现鲜有有意思的笔试题,容易的笔试题总跟着狗血的面试,更多的是不着边际的笔试题,这种情形就不要面试了。所以,可以的话,直接面试好了,要刷就刷吧。。。

希望各公司在社招的时候不要总出同一套题了,一来没意思,二来面试的人背都背熟了,笔试的意义在哪? 推出点有意思的题目吧。。。

原创粉丝点击