1. 程式人生 > >C++引用以及定義常見問題總結

C++引用以及定義常見問題總結

遞歸 null ons color left 控制臺 數據結構 進行 使用

最近在做數據結構的實驗,暴露了一些典型問題,這裏總結一下,避免以後出錯

  1. 編譯時報一個特別長的錯:“無法解析的外部符號”,行號還是1,應該看一下定義的成員函數有沒有還沒有實現就被調用的,實驗接口普遍挺多,記得把應該實現的函數都實現了。
  2. 模板類作為友元時需要寫前視說明,否則會報很多不明所以的錯誤
  3. 關於傳入指針和指針引用:傳入指針可以改變指針指向的對象的值,但是不能改變指針的指向;而使用指針引用就可以辦到
  4. 只需要訪問,不需要修改的值,可以定義為const或者使用const 類型的get函數訪問
  5. 一種自己寫的在二叉樹中搜索的方法:
    bool BinaryTree<T>::Search(BinaryTreeNode<T>*root,T &data)
    {
    
    /*前序遍歷,遞歸進行元素的搜索*/ int flag = 0; if (root == NULL) return 0; if (root->data == data) { flag = 1; return flag; } flag=flag+Search(root->left, data); flag=flag+Search(root->right, data); return flag; };

  6. 註意區分成員函數和參數,有時候get函數會寫成和參數名很像的樣子,不要認錯。
  7. 老問題,程序不調試直接運行時控制臺一閃而過的解決方法:調試-》XXX(項目名)屬性-》鏈接器-》系統-》子系統-》改為“控制臺”即可。

C++引用以及定義常見問題總結