最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

c++中template對字符串的處理方法

 更新時間:2014年07月23日 16:29:09   投稿:shichen2014  
這篇文章主要介紹了c++中template對字符串的處理方法,需要的朋友可以參考下

C++中的Template作用是把僅類型不同但功能相似的函數(shù)合并在一起,但是有時候template中的函數(shù)并不能滿足所有的類型調(diào)用。如下所示:

template <class Kty>
inline int hash_wrap(const Kty& k)
{
return (int)k;
}

所有的數(shù)字類型使用該模板都沒有問題,但是string類型卻不行,因為不支持有string到int的類型轉(zhuǎn)換(編譯過程中)。這樣我們就需要在該模板外添加一個對string類型的支持,代碼如下:

template <>
inline int hash_wrap<string>(conststring & k)
{
return k.size();
}

其中template <>表明該函數(shù)是模板類型的延伸,<string>表明對原模板的string類型進行改寫。

例如下面兩個例子所示:

例1:

template <class Kty>
inline unsigned int get_size(const Kty&k)
{
return sizeof(Kty);
}
template <>
inline unsigned int get_size(conststring& k)
{
return k.length() + 1;
}

例2:

template <class Kty>
inline bool cmp_key(const Kty& k, constchar* dest)
{
return k == *(Kty* )dest;;
}
template <>
inline bool cmp_key(const string& k,const char* dest)
{
return strcmp(k.c_str(), dest) == 0;
}

相關(guān)文章

  • C++中的位運算和位圖bitmap解析

    C++中的位運算和位圖bitmap解析

    這篇文章主要介紹了C++中的位運算和位圖bitmap,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-07-07
  • C語言實現(xiàn)推箱子功能匯總

    C語言實現(xiàn)推箱子功能匯總

    這篇文章主要為大家詳細介紹了C語言實現(xiàn)推箱子功能,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-08-08
  • opencv4.5.4+VS2022開發(fā)環(huán)境搭建的實現(xiàn)

    opencv4.5.4+VS2022開發(fā)環(huán)境搭建的實現(xiàn)

    本文主要介紹了opencv4.5.4+VS2022開發(fā)環(huán)境搭建的實現(xiàn),文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-02-02
  • 如何理解C++指針常量和常量指針

    如何理解C++指針常量和常量指針

    這篇文章主要介紹了如何理解C++指針常量和常量指針,文章圍繞主題展開詳細的內(nèi)容介紹,具有一定的參考價值,需要的小伙伴可以參考一下
    2022-06-06
  • C語言深入探究冒泡排序與堆排序使用案例講解

    C語言深入探究冒泡排序與堆排序使用案例講解

    算法中排序是十分重要的,而每一個學(xué)習(xí)計算機的都會在初期的時候接觸到這種排序,下面這篇文章主要給大家介紹了關(guān)于c語言冒泡排序與堆排序使用的相關(guān)資料,需要的朋友可以參考下
    2022-05-05
  • C語言鏈表實現(xiàn)貪吃蛇小游戲

    C語言鏈表實現(xiàn)貪吃蛇小游戲

    這篇文章主要為大家詳細介紹了C語言鏈表貪吃蛇小游戲,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-05-05
  • 通過C語言判斷字符串是否為點分十進制的IP地址

    通過C語言判斷字符串是否為點分十進制的IP地址

    這篇文章主要為大家詳細介紹了如何通過C語言判斷字符串是否為點分十進制的IP地址,文中的示例代碼講解詳細,感興趣的小伙伴可以了解一下
    2023-03-03
  • C++11/14 線程中使用Lambda函數(shù)的方法

    C++11/14 線程中使用Lambda函數(shù)的方法

    這篇文章主要介紹了C++11/14 線程中使用Lambda函數(shù)的方法,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2019-01-01
  • C++實現(xiàn)utf8字符串和gbk字符串互轉(zhuǎn)

    C++實現(xiàn)utf8字符串和gbk字符串互轉(zhuǎn)

    這篇文章主要為大家詳細介紹了C++實現(xiàn)utf8字符串和gbk字符串轉(zhuǎn)換的相關(guān)知識,文中的示例代碼講解詳細,感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下
    2025-02-02
  • VS及Unity安裝和使用Nuget包

    VS及Unity安裝和使用Nuget包

    本文主要介紹了VS及Unity安裝和使用Nuget包,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-01-01

最新評論

通化市| 美姑县| 大渡口区| 方城县| 沽源县| 安化县| 玛多县| 喀喇沁旗| 句容市| 宁波市| 西宁市| 仪陇县| 宁化县| 灌阳县| 邻水| 石河子市| 永川市| 永川市| 邹平县| 宣武区| 新绛县| 嘉禾县| 揭阳市| 新野县| 沂南县| 清流县| 双柏县| 宁陕县| 海伦市| 辽源市| 吴江市| 锡林郭勒盟| 乌拉特后旗| 洛扎县| 嵊泗县| 延川县| 阿拉善盟| 繁峙县| 博兴县| 临朐县| 宣威市|