剑指Offer---面试题1---赋值运算符函数
目录 1、赋值运算符函数介绍 2、题解 3、疑问 3.1 常量引用参数 3.2 在VS中调用strcpy()函数 3.3 c++的null和nullptr 剑指Offer-面试题1 给如下类型添加赋值运算符函数。 class CMyString { private: char* m_pData; public: CMyString(const char* pData = nullptr); CMyString(const CMyString& str); ~CMyString(); }; 1、赋值运算符函数介绍 运算符重载是C++一种形式的多态,允许赋予C++运算符多种含义。 例如我们有一个Time类,包括小时和分钟,平常我们是没法直接让两个Time类相加获取总的小时分钟的。这是我们可以使用对+运算符重载。 未使用重载形式的写法 MyTime.h 头文件 #ifndef MYTIME_H_ #define MYTIME_H_ class Time { private: int hour; int minute; public: Time(); Time(int h,int m); //和另一个类时间相加 Time Sum(const Time& t) const; //输出当前类表示的时间 void Show(); }; #endif // !MYTIME_H_ MyTime