亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

C++自定義實現(xiàn)比較器

 更新時間:2024年01月16日 17:01:13   作者:莫潯  
這篇文章主要為大家詳細介紹了如何使用C++自定義實現(xiàn)比較器,文中的示例代碼講解詳細,具有一定的借鑒價值,感興趣的小伙伴可以跟隨小編一起學習一下

sort() 中的比較函數(shù) compare 要聲明為靜態(tài)成員函數(shù)或全局函數(shù),不能作為普通成員函數(shù),否則會報錯。

cmpChar實現(xiàn)功能:大寫字母大于小寫字母,小寫字母按 a-z 升序,大寫字母按 A-Z 升序

1 在類內(nèi)部定義比較器

聲明為靜態(tài)成員函數(shù)

class Solution {
public:
    void CharacterSort(const vector<char> e_char)
    {
      cout << "before:" << endl;
        for (auto i : e_char) {
            cout << i;
        }
        cout << endl;

        std::sort(e_char.begin(), e_char.end(), cmpChar);
        cout << "after:" << endl;
        for (auto i : e_char) {
            cout << i;
        }
        cout << endl;
    }

private:
    static bool cmpChar(const char &a, const char &b)
    {
        if (a <= 'Z' && b >= 'a')
            return false;
        else if (b <= 'Z' && a >= 'a')
            return true;
        else
            return a < b;
    }

};

輸入:
vector e_char = {‘C’,‘B’,‘A’,‘c’,‘b’,‘a’};
輸出:
before:
CBAcba
after:
abcABC

2 在函數(shù)內(nèi)部定義比較器

lamda表達式

class Solution {
public:
    void CharacterSort(const vector<char> e_char)
    {
      cout << "before:" << endl;
        for (auto i : e_char) {
            cout << i;
        }
        cout << endl;
        auto cmpChar = [](const char &a, const char &b) {
            if (a <= 'Z' && b >= 'a')
                return false;
            else if (b <= 'Z' && a >= 'a')
                return true;
            else
                return a < b;
        };

        std::sort(e_char.begin(), e_char.end(), cmpChar);
        cout << "after:" << endl;
        for (auto i : e_char) {
            cout << i;
        }
        cout << endl;
    }

3 全局函數(shù)比較器

using namespace std;

bool cmpChar(const char &a, const char &b)
    {
        if (a <= 'Z' && b >= 'a')
            return false;
        else if (b <= 'Z' && a >= 'a')
            return true;
        else
            return a < b;
    }

class Solution {
public:
    void CharacterSort(const vector<char> e_char)
    {
      cout << "before:" << endl;
        for (auto i : e_char) {
            cout << i;
        }
        cout << endl;

        std::sort(e_char.begin(), e_char.end(), cmpChar);
        cout << "after:" << endl;
        for (auto i : e_char) {
            cout << i;
        }
        cout << endl;
    }

以上就是C++自定義實現(xiàn)比較器的詳細內(nèi)容,更多關(guān)于C++比較器的資料請關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • 軟件構(gòu)建工具makefile基礎講解

    軟件構(gòu)建工具makefile基礎講解

    這篇文章介紹了軟件構(gòu)建工具makefile,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2021-12-12
  • 一篇文章帶你了解C++的KMP算法

    一篇文章帶你了解C++的KMP算法

    這篇文章主要介紹了c++ 實現(xiàn)KMP算法的示例,幫助大家更好的理解和學習c++,感興趣的朋友可以了解下,希望能給你帶來幫助
    2021-08-08
  • FFmpeg中avfilter模塊的介紹與使用

    FFmpeg中avfilter模塊的介紹與使用

    FFmpeg中的libavfilter模塊(或庫)用于filter(過濾器),?filter可以有多個輸入和多個輸出,下面就跟隨小編一起簡單學習一下它的巨日使用吧
    2023-08-08
  • C/C++實現(xiàn)控制臺輸出不同顏色字體的方法

    C/C++實現(xiàn)控制臺輸出不同顏色字體的方法

    這篇文章主要介紹了C/C++實現(xiàn)控制臺輸出不同顏色字體的方法,涉及C++控制臺文字屬性相關(guān)設置操作技巧,需要的朋友可以參考下
    2017-09-09
  • Qt?QTableWidget基本操作及使用

    Qt?QTableWidget基本操作及使用

    QTableWidget?是?Qt?中的表格組件類。很類似于VC、C#中的DataGrid,本文就詳細來介紹一下Qt?QTableWidget基本操作及使用,感興趣的可以了解一下
    2021-11-11
  • C++實現(xiàn)LeetCode(101.判斷對稱樹)

    C++實現(xiàn)LeetCode(101.判斷對稱樹)

    這篇文章主要介紹了C++實現(xiàn)LeetCode(101.判斷對稱樹),本篇文章通過簡要的案例,講解了該項技術(shù)的了解與使用,以下就是詳細內(nèi)容,需要的朋友可以參考下
    2021-07-07
  • C++11 中的std::function和std::bind詳解

    C++11 中的std::function和std::bind詳解

    這篇文章主要介紹了C++ 11 std::function和std::bind,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2021-10-10
  • C語言實現(xiàn)教務管理系統(tǒng)

    C語言實現(xiàn)教務管理系統(tǒng)

    這篇文章主要為大家詳細介紹了C語言實現(xiàn)教務管理系統(tǒng),文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-03-03
  • C++11中可變模板參數(shù)的實現(xiàn)

    C++11中可變模板參數(shù)的實現(xiàn)

    C++11的可變參數(shù)模板允許創(chuàng)建可以接受可變參數(shù)的函數(shù)和類模板,通過遞歸展開參數(shù)包來處理每個參數(shù),下面就來介紹一下,感興趣的可以了解一下
    2024-12-12
  • C++編程中使用設計模式中的policy策略模式的實例講解

    C++編程中使用設計模式中的policy策略模式的實例講解

    這篇文章主要介紹了C++編程中使用設計模式中的policy策略模式的實例講解,文章最后對策略模式的優(yōu)缺點有一個簡單的總結(jié),需要的朋友可以參考下
    2016-03-03

最新評論