读书人

c++编程作风-读书笔记(2)

发布时间: 2013-01-22 10:23:54 作者: rapoo

c++编程风格----读书笔记(2)

二、一致性

1、一致性示例,如下程序:

#include "stdafx.h"#include "iostream"class string{public:string();string(const char *pStr);string(string& str);~string();const char *content() const;string& operator=(const char *pStr);string& operator=(const string &str);private:void duplicate(const char *pStr);private:char *string_;};void string::duplicate(const char *pStr){if (pStr){string_ = new char[strlen(pStr) + 1];strcpy(string_, pStr);}else{string_ = 0;}}string::string(){string_ = 0;}string::string(const char *pStr){duplicate(pStr);}string::string(string& str){duplicate(str.string_);}string::~string(){if (string_){delete[] string_;}}const char *string::content() const{return string_ ? string_ : 0;}string& string::operator=(const char *pStr){char *prevString = string_;duplicate(pStr);delete[] prevString;return *this;}string& string::operator=(const string &str){if (&str == this){return *this;}delete[] string_;duplicate(str.string_);return *this;}int _tmain(int argc, _TCHAR* argv[]){string author("zengraoli");return 0;}


读书人网 >编程

热点推荐