<dfn id="w48us"></dfn><ul id="w48us"></ul>
  • <ul id="w48us"></ul>
  • <del id="w48us"></del>
    <ul id="w48us"></ul>
  • c/c++程序員面試題

    時間:2024-07-18 18:44:49 面試筆試 我要投稿
    • 相關(guān)推薦

    c/c++程序員面試題

      編寫類String的構(gòu)造函數(shù)、析構(gòu)函數(shù)和賦值函數(shù),已知類String的原型為:

    c/c++程序員面試題

      class String

      {

      public:

      String(const char *str = NULL); // 普通構(gòu)造函數(shù)

      String(const String &other); // 拷貝構(gòu)造函數(shù)

      ~ String(void); // 析構(gòu)函數(shù)

      String & operate =(const String &other); // 賦值函數(shù)

      private:

      char *m_data; // 用于保存字符串

      };

      解答:

      //普通構(gòu)造函數(shù)

      String::String(const char *str)

      {

      if(str==NULL)

      {

      m_data = new char[1]; // 得分點:對空字符串自動申請存放結(jié)束標(biāo)志'\0'的空

      //加分點:對m_data加NULL 判斷

      *m_data = '\0';

      }

      else

      {

      int length = strlen(str);

      m_data = new char[length+1]; // 若能加 NULL 判斷則更好

      strcpy(m_data, str);

      }

      }

      // String的析構(gòu)函數(shù)

      String::~String(void)

      {

       [] m_data; // 或 m_data;

      }

      //拷貝構(gòu)造函數(shù)

      String::String(const String &other)    // 得分點:輸入?yún)?shù)為const型

      {

      int length = strlen(other.m_data);

      m_data = new char[length+1];     //加分點:對m_data加NULL 判斷

      strcpy(m_data, other.m_data);

      }

      //賦值函數(shù)

      String & String::operate =(const String &other) // 得分點:輸入?yún)?shù)為const型

      {

      if(this == &other)   //得分點:檢查自賦值

      return *this;

       [] m_data;     //得分點:釋放原有的內(nèi)存資源

      int length = strlen( other.m_data );

      m_data = new char[length+1];  //加分點:對m_data加NULL 判斷

      strcpy( m_data, other.m_data );

      return *this;         //得分點:返回本對象的引用

      }

      剖析:

      能夠準(zhǔn)確無誤地編寫出String類的構(gòu)造函數(shù)、拷貝構(gòu)造函數(shù)、賦值函數(shù)和析構(gòu)函數(shù)的面試者至少已經(jīng)具備了C++基本功的60%以上!

      在這個類中包括了指針類成員變量m_data,當(dāng)類中包括指針類成員變量時,一定要重載其拷貝構(gòu)造函數(shù)、賦值函數(shù)和析構(gòu)函數(shù),這既是對C++程序員的基本要求,也是《Effective C++》中特別強(qiáng)調(diào)的條款。

      仔細(xì)學(xué)習(xí)這個類,特別注意加注釋的得分點和加分點的意義,這樣就具備了60%以上的C++基本功!


    【c/c++程序員面試題】相關(guān)文章:

    C++程序員求職信11-21

    C++程序員求職信范文11-21

    普天C++筆試題02-18

    基礎(chǔ)C++/C語言筆試題分享11-21

    有心情的試一試,考查C++/C程序員的基本編程技能11-11

    群碩筆試題Java和C++、C#11-21

    C++工程師筆試題目11-25

    最新凌陽科技C++筆試分享11-21

    UC(優(yōu)視科技)2014實習(xí)筆試題回憶版 C/C++編程11-21

    面試題精選02-18

    主站蜘蛛池模板: 免费人成在线观看欧美精品 | 国产99久久九九精品无码| 亚洲福利精品电影在线观看| 亚洲第一精品福利| 精品人妻码一区二区三区| 亚洲国产精品不卡毛片a在线| 国产精品第六页| 8050免费午夜一级国产精品| 国产精品日韩欧美一区二区三区| 亚洲国产精品视频| 久久久久久久亚洲精品| 国产精品无码v在线观看| 最新国产の精品合集| 欧美久久精品一级c片片| 1000部精品久久久久久久久| 久久99精品久久久久久久不卡| 亚洲综合精品香蕉久久网| 亚洲国产综合精品一区在线播放| 老司机精品影院91| 久久国产香蕉一区精品| 国产在线精品一区二区夜色| 国产福利电影一区二区三区,亚洲国模精品一区 | 日本免费精品一区二区三区| 国产91精品黄网在线观看| 欧美精品亚洲精品日韩专区va| 97久久精品无码一区二区| 精品福利一区二区三区免费视频| 少妇精品久久久一区二区三区| 无码人妻精品一区二区三区99仓本| 日韩美女18网站久久精品| 天天爽夜夜爽8888视频精品| 欧美日韩精品系列一区二区三区| 免费视频精品一区二区| 日韩精品欧美国产在线| 无码人妻精品一区二| 亚洲精品无码你懂的网站| 无码国模国产在线无码精品国产自在久国产 | 午夜不卡久久精品无码免费| 无码精品人妻一区二区三区漫画| 亚洲动漫精品无码av天堂| 亚洲av午夜成人片精品网站|