模板鍊錶程式中的錯誤記錄

2021-08-19 10:41:55 字數 1374 閱讀 5218

問題:

1.  const 物件 只能呼叫const  成員函式

bool getelem(int count ,elemtype & e) ;       //--------declare

template//-----------define

linklist:: linklist(const linklist&lc) //-------lc is a const object

length = lc.length;

}

報錯:

ct@ubuntu:~/desktop$ g++ 1.cpp

in file included from 1.cpp:21:0:

1.h: in instantiation of 『linklist::linklist(const linklist&) [with elemtype = int]』:

1.cpp:34:23: required from here

1.h:205:4: error: passing 『const linklist』 as 『this』 argument of

『bool linklist::getelem(int, elemtype&) [with elemtype = int]』 discards qualifiers [-fpermissive]

lc.getelem(i, e);

^

實參時丟棄了型別 discardsqualifiers

從中可以看出 傳入了乙個 const 物件  --的 this 指標 呼叫getelem 函式 而getelem 函式 非const

糾正: 只要在函式宣告和定義的時候加 const 關鍵字即可

bool getelem(int count ,elemtype & e) const;

templatebool linklist::getelem(int addr,elemtype& e) const

注:  非const 物件 可以呼叫 const 函式嗎? --現在getelem 函式是const --實驗一下 --- --結果:可以的

1.cpp

linklisttlink;

int a=0;

tlink.insertelem(5);

tlink.insertelem(2,2);

tlink.insertelem(3,2);

tlink.getelem(3,a);

以上執行正常 並且有 資料列印正確

微信小程式 錯誤記錄

1 報錯this.getuserinfo this.setdata is not a function at pages index index onshow function at api request success callback function typeerror this.getus...

簡單的錯誤記錄

開發乙個簡單錯誤記錄功能小模組,能夠記錄出錯的 所在的檔名稱和行號。處理 1.記錄最多8條錯誤記錄,對相同的錯誤記錄 即檔名稱和行號完全匹配 只記錄一條,錯誤計數增加 檔案所在的目錄不同,檔名和行號相同也要合併 2.超過16個字元的檔名稱,只記錄檔案的最後有效16個字元 如果檔名不同,而只是檔名的後...

應用程式錯誤記錄windows錯誤日誌

應用程式中記錄錯誤日誌是在普通不過的開發需求了,但凡系統正規點這都是必不可少的,但之前用的方式除了寫txt檔案就是寫資料庫,今天學到一種新方式 錯誤資訊記錄windows錯誤日誌,總結下 顧名思義,這種方式就是當程式報錯後,講錯誤資訊記錄在windows系統自帶的事件檢視器 注 進入事件檢視器的命令...