久久久久无码精品,四川省少妇一级毛片,老老熟妇xxxxhd,人妻无码少妇一区二区

c/c++程序員面試題

時(shí)間: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]; // 得分點(diǎn):對(duì)空字符串自動(dòng)申請(qǐng)存放結(jié)束標(biāo)志'\0'的空

  //加分點(diǎn):對(duì)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)    // 得分點(diǎn):輸入?yún)?shù)為const型

  {

  int length = strlen(other.m_data);

  m_data = new char[length+1];     //加分點(diǎn):對(duì)m_data加NULL 判斷

  strcpy(m_data, other.m_data);

  }

  //賦值函數(shù)

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

  {

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

  return *this;

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

  int length = strlen( other.m_data );

  m_data = new char[length+1];  //加分點(diǎn):對(duì)m_data加NULL 判斷

  strcpy( m_data, other.m_data );

  return *this;         //得分點(diǎn):返回本對(duì)象的引用

  }

  剖析:

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

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

  仔細(xì)學(xué)習(xí)這個(gè)類,特別注意加注釋的得分點(diǎn)和加分點(diǎn)的意義,這樣就具備了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實(shí)習(xí)筆試題回憶版 C/C++編程11-21

面試題精選02-18