| 
						
						
							
								
							
						
						
					 | 
					 | 
					@ -15,9 +15,9 @@ String::String(int size) : length(0), allocSize(size) { | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					} | 
					 | 
					 | 
					 | 
					} | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					
 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					/**
 | 
					 | 
					 | 
					 | 
					/**
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 * 不设定初始化大小就默认64个字符来初始化 | 
					 | 
					 | 
					 | 
					 * 不设定初始化大小就默认128个字符来初始化 | 
				
			
			
				
				
			
		
	
		
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 */ | 
					 | 
					 | 
					 | 
					 */ | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					String::String() : String(64) {} | 
					 | 
					 | 
					 | 
					String::String() : String(128) {} | 
				
			
			
				
				
			
		
	
		
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					
 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					/**
 | 
					 | 
					 | 
					 | 
					/**
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 * 从源中复制字符串来构建新的对象 | 
					 | 
					 | 
					 | 
					 * 从源中复制字符串来构建新的对象 | 
				
			
			
		
	
	
		
		
			
				
					| 
						
							
								
							
						
						
							
								
							
						
						
					 | 
					 | 
					@ -160,18 +160,17 @@ void String::addString(const char *source, int sourceLength) { | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					        char *old = new char[length + 1](); | 
					 | 
					 | 
					 | 
					        char *old = new char[length + 1](); | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					        strcpy(old, data); | 
					 | 
					 | 
					 | 
					        strcpy(old, data); | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					
 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					        // 重新分配内存,防止拼接后溢出,2为两个横杠大小
 | 
					 | 
					 | 
					 | 
					 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					        length += sourceLength; | 
					 | 
					 | 
					 | 
					 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					        allocSize = length + 1; | 
					 | 
					 | 
					 | 
					 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					
 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					        // 重新分配内存,防止拼接后溢出
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					        delete[] data; | 
					 | 
					 | 
					 | 
					        delete[] data; | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					        allocSize = length + sourceLength + 1; | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					        this->data = new char[allocSize](); | 
					 | 
					 | 
					 | 
					        this->data = new char[allocSize](); | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					
 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					        strcpy(data, old); | 
					 | 
					 | 
					 | 
					        strcpy(data, old); | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					    } | 
					 | 
					 | 
					 | 
					    } | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					
 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					    strcat(data, source); | 
					 | 
					 | 
					 | 
					    strcat(data, source); | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					    length += sourceLength; | 
					 | 
					 | 
					 | 
					    length = allocSize - 1; | 
				
			
			
				
				
			
		
	
		
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					} | 
					 | 
					 | 
					 | 
					} | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					
 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					/**
 | 
					 | 
					 | 
					 | 
					/**
 | 
				
			
			
		
	
	
		
		
			
				
					| 
						
							
								
							
						
						
						
					 | 
					 | 
					
  |