string 구현
class String{
public:
//      
String(const char *str = NULL);
//      
String(const String &other);
//    
String & operator=(String &other) ;
//    
~String(void);
private:
char* m_str;
};
          
//      
String::String(const char* str){
    if(str==NULL) //  str NULL,     {
        m_str = new char[1]; //      
        *m_str = ‘\0′; //   ’\0′
}else{
       str = new char[strlen(str) + 1];//      str  
        strcpy(m_str, str); //  str     m_str 
    }
}
//    
String::~String(){
    if(m_str!=NULL) //  m_str  NULL,     {
        delete [] m_str;
        m_str = NULL;
}
}
//      
String::String(const String &other){
    m_str = new char[strlen(other.m_str)+1]; //      str  
    strcpy(m_str, other.m_str); //  other.m_str     m_str  
}
//    
String & String::operator=(String &other){
    if(this == &other) //    other      ,     {
        return *this
}
    delete [] m_str; //  ,          
    m_str = new char[strlen(other.m_str)+1]; //      str  
    strcpy(m_str, other.m_str); //  other.m_str     m_str 
    return *this;
}
                이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
다양한 언어의 JSONJSON은 Javascript 표기법을 사용하여 데이터 구조를 레이아웃하는 데이터 형식입니다. 그러나 Javascript가 코드에서 이러한 구조를 나타낼 수 있는 유일한 언어는 아닙니다. 저는 일반적으로 '객체'{}...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.