《條目十九》了解相等和等價的區別

2022-02-04 03:22:15 字數 475 閱讀 3183

在stl標準庫中,find和insert兩個操作都涉及到對資料的比較。但是他們是兩種不同的比較,前者是基於相等(基於operator==,表示式if(x == y)),後者是基於等價(基於if(!x對於相等,注意的地方:

對於等價,注意的地方有:

看例子:

// 用於忽略大小寫

struct cistringcompare: public binary_function

set

對於關聯容器來說,都可以像上面的例子那樣,自己實現乙個判斷等價的判別式,通過容器模板的第二個引數傳進去自定義等價判別式。

在這裡注意:

了解fscanf,fread的用法和區別

fscanf 函式原型 int fscanf file fp,格式化字串 輸入項位址表 功能為 從檔案指標fp所指向的檔案中按照格式字串指定的格式將檔案中的資料送到輸入項位址表中。若讀取資料成功會返回所讀取資料的個數,並將資料按照指定格式存入記憶體中的變數或陣列中,檔案指標自動向下移動 若讀取失敗則...

兩個物件相等equals和 的區別

比如 string s1 abc string s2 new string abc equals返回true,但是不 但是他們的hashcode是相同的,為什麼不 最佳答案 string s1 abc s1指向了 abc string s2 new string abc 生成了物件new strin...

js基礎 11 相等和全等的區別

在進行比較前,會先進行強制轉換運算元 1,有乙個運算元是布林值,則轉化為數字,false變成0,true變成1 2,乙個是數字,乙個是字串,則字串轉化為對應數字 3,乙個是物件,乙個不是,則呼叫物件的valueof 方法,用得到的基本型別值比較值得注意的是 1,underfined和null不進行強...