Advertisement

right-value reference data movement semantics type-perfect forwarding

阅读量:
复制代码
 class CMyString {

    
 public:
    
 	CMyString(const char* str = nullptr) {
    
 		cout << "CMyString(const char* str = nullptr)" << endl;
    
 		if (str != nullptr) {
    
 			_pstr = new char[strlen(str) + 1];
    
 			strcpy(_pstr, str);
    
 		}
    
 		else {
    
 			_pstr = new char[1];
    
 			*_pstr = '\0';
    
 		}
    
 	}
    
 	~CMyString() {
    
 		cout << "~CMyString()" << endl;
    
 		delete[]_pstr;
    
 		_pstr = nullptr;
    
 	}
    
 	CMyString(const CMyString& src) {
    
 		cout << "CMyString(const CMyString& src)" << endl;
    
 		_pstr = new char[strlen(

全部评论 (0)

还没有任何评论哟~