C++學習細節回顧(匯總二)

一.初始化列表相關
1.初始化順序受申明順序影響
2.在必要時可以部分不采用初始化列表,避免受特性1影響

二.非類型模板參數
template< class T , size_t N = 10 >

三.特化–特殊化處理
template< class T >
bool less(T left , T right)
{
return left<right;
}
當調用時傳入的是地址,這時候比較邏輯存在錯誤
因此要采用特化(類似于類的顯示實例化)
template<>
bool less<Date*>(Date * left ,Date* right)
{
return *left<*right;
}
注意:模板函數一般不采用特化,直接寫個匹配的普通函數就行了(有現成吃現成)

小細節講解:
bool less(const T& left…)
特化:
bool less< const Date*& left> 不對特化不成功,模板函數const修飾的是left ,這里修飾的是 * left
bool less< Date* const & left> ,正確的

四.類模板–特化
1.全特化 template<> class Date< int char >
2.偏特化有兩種一種是部分特化,一種是對參數形成限制
template< class T1> class Date< class T1, char >//部分特化
template< class T1 class T2> class Date< T1* ,T2* >//對參數形成限制

類模板特化應用示例
有如下專門用來按照小于比較的類模板Less:
template
struct Less
{
bool operator()(const T& x, const T& y) const
{
return x < y;
}
};

sort( v1.begin() , v1.end() , Less < Date >( ));
// 可以直接排序,結果錯誤日期還不是升序,而v2中放的地址是升序
// 此處需要在排序過程中,讓sort比較v2中存放地址指向的日期對象
// 但是走Less模板,sort在排序時實際比較的是v2中指針的地址,因此無法達到預期
sort(v2.begin(), v2.end(), Less<Date>( ));*
解決方案:// 對Less類模板按照指針方式特化
template<>
struct Less<Date*>
{
bool operator()(Date* x, Date* y) const
{
return *x < *y;
}
};

在這里插入圖片描述

五.編譯.聲明和定義相關問題
在這里插入圖片描述
在這里插入圖片描述

六…(難點目前不會??????)
1.仿函數
2.普通迭代器和const迭代器

在這里插入圖片描述

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/79837.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/79837.shtml
英文地址,請注明出處:http://en.pswp.cn/web/79837.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

勾選某一行的勾選框,更改當前行的顏色,ALV數據發生變化的事件

文章目錄 屏幕ALV的創建定義變量注冊事件方法定義方法實現frm_data_change 效果 屏幕 ALV的創建 DATA: g_gui_custom_container TYPE REF TO cl_gui_custom_container. DATA: g_gui_alv_grid TYPE REF TO cl_gui_alv_grid.DATA: gt_listheader TYPE slis_t_listheader, &quo…

AI-02a5a6.神經網絡-與學習相關的技巧-批量歸一化

批量歸一化 Batch Normalization 設置合適的權重初始值&#xff0c;則各層的激活值分布會有適當的廣度&#xff0c;從而可以順利的進行學習。那么&#xff0c;更進一步&#xff0c;強制性的調整激活值的分布&#xff0c;是的各層擁有適當的廣度呢&#xff1f;批量歸一化&#…

解決SQL Server SQL語句性能問題(9)——合理使用表分區

9.2. 合理使用表分區 本專欄4.1.4節中,我們對表分區相關的概念和機制等基礎理論進行了較為詳細的介紹和論述,讀者可以參考該節中內容,或者,讀者也可以參考官方或其他相關資料。與其他關系庫類似,SQL Server 2005版本中引進的真正意義上的表分區技術,絕對是解決海量數據環…

C語言學習之文件操作

經過前面的學習&#xff0c;我們已經基本掌握了如何去寫一個C語言的代碼了。但是在實際的項目中&#xff0c;我們不可能不需要文件去操作。因為如果沒有文件&#xff0c;我們寫的程序是存儲在電腦的內存中的。如果程序推出&#xff0c;內存回收數據就隨之丟失了。如果我們要對數…

2025年PMP 學習十三 第9章 項目資源管理(9.1,9.2)

2025年PMP 學習十三 第9章 項目資源管理&#xff08;9.1,9.2&#xff09; 序號過程過程組9.1規劃資源管理規劃9.2估算活動資源規劃9.3獲取資源執行9.4建設團隊執行9.5管理團隊執行9.6控制資源監控 文章目錄 2025年PMP 學習十三 第9章 項目資源管理&#xff08;9.1,9.2&#xf…

藍橋杯13屆國B 完全日期

題目描述。 如果一個日期中年月日的各位數字之和是完全平方數&#xff0c;則稱為一個完全日期。 例如&#xff1a;2021 年 6 月 5 日的各位數字之和為 20216516&#xff0c;而 16 是一個完全平方數&#xff0c;它是 4 的平方。所以 2021 年 6 月 5 日是一個完全日期。 例如&…

某某霸翻譯逆向分析[JS逆向]

聲明 本文章中所有內容僅供學習交流使用&#xff0c;不用于其他任何目的&#xff0c;不提供完整代碼&#xff0c;抓包內容、敏感網址、數據接口等均已做脫敏處理&#xff0c;嚴禁用于商業用途和非法用途&#xff0c;否則由此產生的一切后果均與作者無關&#xff01; 本文章未經…

開源Heygem本地跑AI數字人視頻教程

圖文教程&#xff1a; 點擊跳轉 視頻教程 資料包下載 點擊下載&#xff1a;

C++之fmt庫介紹和使用(1)

C之fmt庫介紹與使用(1) Author: Once Day Date: 2025年5月12日 一位熱衷于Linux學習和開發的菜鳥&#xff0c;試圖譜寫一場冒險之旅&#xff0c;也許終點只是一場白日夢… 漫漫長路&#xff0c;有人對你微笑過嘛… 全系列文章可參考專欄: 源碼分析_Once-Day的博客-CSDN博客 …

設計模式(9)——創建型模式之工廠方法

設計模式(9)——創建型模式之工廠方法 工廠方法作用結構偽代碼適用場景工廠方法 作用 工廠方法是一種創建型設計模式,其在父類中提供一個創建對象的方法,允許子類決定實例化對象的類型。 結構 產品(Product)將會對接口進行聲明。對于所有由創建者及其子類構建的對象,…

Docker 疑難雜癥解決指南:從入門到進階的全面剖析

Docker 作為容器化技術的代表&#xff0c;憑借其輕量級、可移植性和高效資源利用率&#xff0c;已成為開發、測試和部署應用的標準工具。然而&#xff0c;在實際使用中&#xff0c;用戶常常會遇到鏡像構建失敗、容器啟動異常、網絡配置問題等疑難雜癥。本文將從鏡像構建、容器生…

搶跑「中央計算+區域控制」市場,芯馳科技高端智控MCU“芯”升級

伴隨著整車EE架構的加速變革&#xff0c;中國高端車規MCU正在迎來“新格局”。 在4月23日開幕的上海國際車展期間&#xff0c;芯馳科技面向新一代AI座艙推出了X10系列芯片&#xff0c;以及面向區域控制器、電驅和動力域控、高階輔助駕駛和艙駕融合系統等的高端智控MCU產品E3系…

DeepPrep:深度學習提升神經影像預處理

DeepPrep&#xff1a;深度學習提升神經影像預處理 一、DeepPrep介紹和BIDS格式介紹 神經影像預處理的痛點&#xff1a;傳統工具&#xff08;如fMRIPrep&#xff09;在大規模數據處理時效率低下&#xff0c;臨床樣本魯棒性不足。DeepPrep通過深度學習工作流管理實現突破&#…

pytorch 數據預處理和常用工具

文章目錄 NumPyNumpy數據結構安裝和使用NumPy Matplotlib的安裝和導入安裝和導入Matplotlib繪制基礎圖畫折線圖散點圖柱狀圖圖例 數據清洗據清洗的作用Pandas進行數據清洗Pandas數據結構Series 數據結構DataFrame數據結構 Pandas數據清洗常用代碼 特征工程主成分分析線性判別分…

MATLAB 中常用的微分函數介紹

MATLAB 中常用的微分函數介紹 在 MATLAB 中&#xff0c;微分運算是數值計算和符號計算中常用的功能。無論是在進行數據分析、優化算法&#xff0c;還是數學建模時&#xff0c;微分都扮演著重要的角色。本文將介紹 MATLAB 中常用的微分函數&#xff0c;并通過簡單的示例幫助大家…

按指定位置或關鍵字批量刪除工作表-Excel易用寶

在一個工作簿中有多個工作表&#xff0c;有些工作表不需要了&#xff0c;如果一個一個手動刪除&#xff0c;那實在是太慢了&#xff0c;有沒有什么好的方法可以批量刪除工作表。 批量刪除工作表很簡單&#xff0c;單擊【易用寶】→【工作表】→【批量刪除工作表】。 在打開的批…

TypeScript裝飾器:從入門到精通

TypeScript裝飾器&#xff1a;從入門到精通 什么是裝飾器&#xff1f; 裝飾器&#xff08;Decorator&#xff09;是TypeScript中一個非常酷的特性&#xff0c;它允許我們在不修改原有代碼的情況下&#xff0c;給類、方法、屬性等添加額外的功能。想象一下裝飾器就像給你的代碼…

【SSL證書系列】客戶端如何檢查中間CA簽名是否由根CA簽發

客戶端通過以下步驟檢查中間CA的簽名是否由受信任的根CA簽發&#xff1a; 1. 證書鏈的構建 服務器發送的證書鏈通常包含&#xff1a; ? 服務器證書&#xff08;由中間CA簽發&#xff09; ? 中間CA證書&#xff08;由根CA簽發&#xff09; ? 根CA證書&#xff08;通常不發送…

【android bluetooth 協議分析 12】【A2DP詳解 1】【車機側藍牙音樂免切源介紹】

“車機藍牙音樂免切源” 是近年來車載系統&#xff08;IVI&#xff0c;In-Vehicle Infotainment&#xff09;中常見的一個用戶體驗優化功能。它主要是為了簡化藍牙音樂播放流程、減少用戶操作&#xff0c;提升使用便捷性。 一、什么是“切源”&#xff1f; 在車機系統中&#…

Android usb網絡共享詳解

Android usb網絡共享詳解 文章目錄 Android usb網絡共享詳解一、前言二、USB網絡共享使用的前提1、Android設備支持adb 并且打開usb開關2、原生Settings能看到USB網絡共享開關3、代碼中檢測USB網絡共享是否支持 三、Settings 中USB網絡共享代碼的部分代碼1、Settings\res\xml\t…