一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

C++之類模板深入學(xué)習(xí)的總結(jié)

電子設(shè)計(jì) ? 來(lái)源:電子設(shè)計(jì) ? 作者:電子設(shè)計(jì) ? 2020-12-24 15:46 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

一、類模板的深入學(xué)習(xí):

1、類模板可以定義任意多個(gè)不同的類型參數(shù)(這一點(diǎn)和模板函數(shù)一樣)

template < typename T1, typenaem T2 >
class Test

public:
void add(T1 a, T2 b);

//定義類對(duì)象時(shí)
Test

2、類模板可以被特化

指定類模板的特定實(shí)現(xiàn)

部分類參數(shù)必須顯示指定

根據(jù)類型參數(shù)分開(kāi)實(shí)現(xiàn)類模板

特化前:

template < typename T1, typename T2 >
class Test


};

特化后:

template < typename T >
class Test < T , T >

};

3、類模板的特化類型:

部分特化:用特定的規(guī)則約束類型參數(shù)

完全特化:完全顯示指定類型參數(shù)

完全特化前:

template

完全特化后:

template < >
class Test < int, int>

};

代碼實(shí)踐:

#include

輸出結(jié)果:

root@txp-virtual-machine:/home/txp# ./a.out
void add(T1 a, T2 b)
3.5
void add(T a, T b)
10
class Test < T , T >
void add(void* a, void* b)
error to add void* parm
void add(T1* a, T2* b)
1.1

4、類模板特化注意事項(xiàng):

(1)特化只是模板的分開(kāi)實(shí)現(xiàn)

本質(zhì)上是同一個(gè)類模板

(2)特化類模板的使用方式是統(tǒng)一的

必須顯示指定每一個(gè)類型參數(shù)

5、類模板特化與重定義有區(qū)別嗎?函數(shù)模板可以特化嗎?

(1)重定義和特化的不同:

重定義:

--一個(gè)類模板和一個(gè)新類(或者兩個(gè)類模板)

--使用的時(shí)候需要考慮如何選擇的問(wèn)題

特化:

--以統(tǒng)一的方式類使用類模板的特化類

--編譯器自動(dòng)優(yōu)先選擇特化類

(2)函數(shù)模板只支持參數(shù)完全特化

函數(shù)模板特化前:

template < typename T >
bool Equal(T a, T b)

return a==b;

函數(shù)模板完全特化后:

template < >
bool Euqal

代碼實(shí)踐:

#include

輸出結(jié)果:

root@txp-virtual-machine:/home/txp# ./a.out
bool Equal(T a, T b)
1
bool Equal

注解:當(dāng)需要重載函數(shù)模板時(shí),優(yōu)先考慮使用模板特化;當(dāng)模板特化無(wú)法滿足需求,再使用函數(shù)重載

二、總結(jié):

類模板可以定義任意多個(gè)不同的類型參數(shù)

類模板可以被部分特化和完全特化

特化的本質(zhì)是模板的分開(kāi)實(shí)現(xiàn)

函數(shù)模板只支持完全特化

工程中使用模板特化代替類(函數(shù))重定義

好了,今天的分享就到這里,如果文章中有錯(cuò)誤或者不理解的地方,可以交流互動(dòng),一起進(jìn)步。我是txp,下期見(jiàn)!

審核編輯:符乾江
聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 可編程邏輯
    +關(guān)注

    關(guān)注

    7

    文章

    526

    瀏覽量

    44768
  • C++
    C++
    +關(guān)注

    關(guān)注

    22

    文章

    2119

    瀏覽量

    75330
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    基于LockAI視覺(jué)識(shí)別模塊:C++模板匹配

    /master/Cpp_example/C03_Template_Matching_more 1. 基本知識(shí)講解 1.1 多模板匹配的重要幸 目標(biāo)檢測(cè):多模板匹配可以用于檢測(cè)圖像中的多個(gè)特定對(duì)象。 應(yīng)用場(chǎng)
    發(fā)表于 05-14 15:00

    基于LockAI視覺(jué)識(shí)別模塊:C++模板匹配

    模板匹配是一種在圖像中同時(shí)尋找多個(gè)模板的技術(shù)。通過(guò)對(duì)每個(gè)模板逐一進(jìn)行匹配,找到與輸入圖像最相似的區(qū)域,并標(biāo)記出匹配度最高的結(jié)果。本實(shí)驗(yàn)提供了一個(gè)簡(jiǎn)單的多模板匹配案例,并將其封裝為一個(gè)
    的頭像 發(fā)表于 05-14 14:37 ?318次閱讀
    基于LockAI視覺(jué)識(shí)別模塊:<b class='flag-5'>C++</b>多<b class='flag-5'>模板</b>匹配

    基于LockAI視覺(jué)識(shí)別模塊:C++模板匹配

    /Cpp_example/C02_TemplateMatching 1. 基本知識(shí)講解 1.1 模板匹配的重要性 目標(biāo)檢測(cè):模板匹配可以用于檢測(cè)圖像中的特定對(duì)象。 應(yīng)用場(chǎng)景:廣泛應(yīng)用于物體識(shí)別、工業(yè)自動(dòng)化
    發(fā)表于 05-13 14:40

    基于LockAI視覺(jué)識(shí)別模塊:C++模板匹配

    模板匹配是一種在圖像中尋找特定模式的技術(shù)。它通過(guò)滑動(dòng)一個(gè)模板圖像(較小的圖像)在輸入圖像上進(jìn)行比較,找到最相似的區(qū)域。本實(shí)驗(yàn)提供了一個(gè)簡(jiǎn)單的模板匹配案例,并將其封裝為一個(gè)自定義函數(shù)performTemplateMatching,
    的頭像 發(fā)表于 05-13 14:14 ?205次閱讀
    基于LockAI視覺(jué)識(shí)別模塊:<b class='flag-5'>C++</b><b class='flag-5'>模板</b>匹配

    C++學(xué)到什么程度可以找工作?

    C++開(kāi)發(fā)的工作不僅需要深厚的編程功底,還要具備解決實(shí)際問(wèn)題的能力,以及良好的溝通能力和團(tuán)隊(duì)協(xié)作精神。此外,持續(xù)學(xué)習(xí)和更新自己的知識(shí)體系也是保持競(jìng)爭(zhēng)力的關(guān)鍵。
    發(fā)表于 03-13 10:19

    限時(shí)免積分下載:增量式與位置式PID算法的C語(yǔ)言實(shí)現(xiàn)分享

    前面咱們有分享對(duì)PID算法離散化和增量式PID算法原理進(jìn)行來(lái)探索,之后又使用Matlab進(jìn)行了仿真實(shí)驗(yàn),對(duì)PID三個(gè)參數(shù)又有了更深入的認(rèn)識(shí),接下來(lái)我們來(lái)使用C語(yǔ)言進(jìn)行PID算法實(shí)現(xiàn),并且結(jié)合控制電機(jī)的項(xiàng)目來(lái)深入學(xué)習(xí)。 今天限時(shí)免
    發(fā)表于 03-05 18:32

    Spire.XLS for C++組件說(shuō)明

    開(kāi)發(fā)人員可以快速地在 C++ 平臺(tái)上完成對(duì) Excel 的各種編程操作,如根據(jù)模板創(chuàng)建新的 Excel 文檔,編輯現(xiàn)有 Excel 文檔,以及對(duì) Excel 文檔進(jìn)行轉(zhuǎn)換。 Spire.XLS
    的頭像 發(fā)表于 01-14 09:40 ?632次閱讀
    Spire.XLS for <b class='flag-5'>C++</b>組件說(shuō)明

    同樣是函數(shù),在CC++中有什么區(qū)別

    同樣是函數(shù),在 CC++ 中有什么區(qū)別? 第一個(gè)返回值。 C語(yǔ)言的函數(shù)可以不寫(xiě)返回值類型,編譯器會(huì)默認(rèn)為返回 int。 但是 C++ 的函數(shù),除了構(gòu)造和析構(gòu)這兩個(gè)特殊的函數(shù),必須
    的頭像 發(fā)表于 11-29 10:25 ?913次閱讀

    ADS1299EEGFE-PDK在window上如何通過(guò)C++讀取8通道數(shù)據(jù)?

    入手了一塊ADS1299EEGFE-PDK,想用這塊板做eeg測(cè)試,開(kāi)發(fā)語(yǔ)言是c++,window平臺(tái),這塊板沒(méi)有提供sdk之類的,怎么獲取8個(gè)通道的數(shù)據(jù),有沒(méi)有做過(guò)的朋友?
    發(fā)表于 11-27 06:51

    C7000 C/C++優(yōu)化指南用戶手冊(cè)

    電子發(fā)燒友網(wǎng)站提供《C7000 C/C++優(yōu)化指南用戶手冊(cè).pdf》資料免費(fèi)下載
    發(fā)表于 11-09 15:00 ?0次下載
    <b class='flag-5'>C</b>7000 <b class='flag-5'>C</b>/<b class='flag-5'>C++</b>優(yōu)化指南用戶手冊(cè)

    TMS320C6000優(yōu)化C/C++編譯器v8.3.x

    電子發(fā)燒友網(wǎng)站提供《TMS320C6000優(yōu)化C/C++編譯器v8.3.x.pdf》資料免費(fèi)下載
    發(fā)表于 11-01 09:35 ?1次下載
    TMS320<b class='flag-5'>C</b>6000優(yōu)化<b class='flag-5'>C</b>/<b class='flag-5'>C++</b>編譯器v8.3.x

    C語(yǔ)言和C++中結(jié)構(gòu)體的區(qū)別

    同樣是結(jié)構(gòu)體,看看在C語(yǔ)言和C++中有什么區(qū)別?
    的頭像 發(fā)表于 10-30 15:11 ?772次閱讀

    C7000優(yōu)化C/C++編譯器

    電子發(fā)燒友網(wǎng)站提供《C7000優(yōu)化C/C++編譯器.pdf》資料免費(fèi)下載
    發(fā)表于 10-30 09:45 ?0次下載
    <b class='flag-5'>C</b>7000優(yōu)化<b class='flag-5'>C</b>/<b class='flag-5'>C++</b>編譯器

    如何學(xué)習(xí)ARM?

    ARM 處理器架構(gòu): 學(xué)習(xí) ARM 處理器的架構(gòu)是學(xué)習(xí)的核心。ARM 架構(gòu)有不同的版本,如 ARMv7、ARMv8 等。你可以從學(xué)習(xí) ARMv7 開(kāi)始,逐步深入學(xué)習(xí)其他版本的細(xì)節(jié)。
    發(fā)表于 10-11 10:42

    OpenVINO2024 C++推理使用技巧

    很多人都使用OpenVINO新版的C++ 或者Python的SDK,都覺(jué)得非常好用,OpenVINO2022之后的版本C++ SDK做了大量的優(yōu)化與整理,已經(jīng)是非常貼近開(kāi)發(fā)的使用習(xí)慣與推理方式。與OpenCV的Mat對(duì)象對(duì)接方式更是幾乎無(wú)縫對(duì)接,非常的方便好用。
    的頭像 發(fā)表于 07-26 09:20 ?1574次閱讀