C++11 新特性(十一)

昨天研究了一天的宏,最后的結(jié)論還是無法和模板一起使用^人堋!枫疆! 特性十里的代碼我更新一下:

#include <iostream>

using namespace std;

template <typename T>
auto sum(T first) {
    return first;
}

template <typename T1, typename...  T2>
auto sum(T1 first, T2... rest) {
    return first + sum(rest...);
}

int main() {
    std::cout << sum(1, 2, 3, 4, 5, 6, 7, 8, 9, 10) << std::endl;

    return 0;
}

從目前來看爵川,遞歸的規(guī)則和遞歸終止條件必須寫成兩個函數(shù)敷鸦,而且是重載的形式息楔。

基于這種規(guī)則,我們可以寫一些有意思的代碼扒披,比如如何獲得不定長參數(shù)模板的調(diào)用的時候的參數(shù)個數(shù)值依? 代碼如下:

#include <iostream>

using namespace std;

int len() {
    return 0;
}

template <typename T1, typename... T2>
int len(T1 first, T2... rest) {
    return 1 + len(rest...);
}

int main() {
    std::cout << len(1, 2, 3, 4, 5, "abc", "def") << std::endl;

    return 0;
}

輸出結(jié)果:

7

上篇文章中我提到過 apply 這個東西,這個東西其實就是使用類似列表的東西碟案,給函數(shù)傳參愿险,什么意思,比如我有一個函數(shù)形如:

int func(int, string);

我使用如下的調(diào)用方法:

apply(func, list(1, "abc"));

這個東西C++17里面已經(jīng)提供了价说,不過使用的不是list辆亏,而是tuple。實用性嗎鳖目,我就呵呵了0邕丁!领迈!我研究了兩天彻磁,發(fā)現(xiàn)這玩意不能和模板配合使用,簡單的說 func 不是是模板函數(shù)狸捅,或者你想了衷蜓,我要是使用函數(shù)對象封裝這個模板函數(shù)不就行了,那你想多了尘喝,也不行磁浇,不過我測試的模板函數(shù)都是不定長參數(shù),對于定長參數(shù)模板我沒有實驗P嗤省V孟拧鳍贾!總之,不好用交洗!

新特性到這里基本就結(jié)束了骑科,其他的特性都是常規(guī)話的特性,不過我很多東西都沒有說到构拳,比如咆爽,tuple的實現(xiàn)?bind函數(shù)的實現(xiàn)置森?forward的實現(xiàn)及其應(yīng)用斗埂?move的實現(xiàn)等等?這些有興趣就自己看看吧凫海!

C++11 還有一些庫擴(kuò)展呛凶,比如線程庫,隨機(jī)函數(shù)庫行贪,正則表達(dá)式庫等等漾稀?不過我想要的什么json庫,xml庫建瘫,網(wǎng)絡(luò)庫崭捍,還沒有提供。啰脚。殷蛇。

還有什么哈希容器,初始化列表等等橄浓,初始化列表可以看看非常的方便AC巍!荸实!不過這些東西匀们,相對來說理解比較簡單。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末泪勒,一起剝皮案震驚了整個濱河市昼蛀,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌圆存,老刑警劉巖叼旋,帶你破解...
    沈念sama閱讀 218,682評論 6 507
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異沦辙,居然都是意外死亡夫植,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,277評論 3 395
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來详民,“玉大人延欠,你說我怎么就攤上這事∩蚩纾” “怎么了由捎?”我有些...
    開封第一講書人閱讀 165,083評論 0 355
  • 文/不壞的土叔 我叫張陵,是天一觀的道長饿凛。 經(jīng)常有香客問我狞玛,道長,這世上最難降的妖魔是什么涧窒? 我笑而不...
    開封第一講書人閱讀 58,763評論 1 295
  • 正文 為了忘掉前任心肪,我火速辦了婚禮,結(jié)果婚禮上纠吴,老公的妹妹穿的比我還像新娘硬鞍。我一直安慰自己,他們只是感情好戴已,可當(dāng)我...
    茶點故事閱讀 67,785評論 6 392
  • 文/花漫 我一把揭開白布固该。 她就那樣靜靜地躺著,像睡著了一般恭陡。 火紅的嫁衣襯著肌膚如雪蹬音。 梳的紋絲不亂的頭發(fā)上上煤,一...
    開封第一講書人閱讀 51,624評論 1 305
  • 那天休玩,我揣著相機(jī)與錄音,去河邊找鬼劫狠。 笑死拴疤,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的独泞。 我是一名探鬼主播呐矾,決...
    沈念sama閱讀 40,358評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼懦砂!你這毒婦竟也來了蜒犯?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,261評論 0 276
  • 序言:老撾萬榮一對情侶失蹤荞膘,失蹤者是張志新(化名)和其女友劉穎罚随,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體羽资,經(jīng)...
    沈念sama閱讀 45,722評論 1 315
  • 正文 獨居荒郊野嶺守林人離奇死亡淘菩,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,900評論 3 336
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了屠升。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片潮改。...
    茶點故事閱讀 40,030評論 1 350
  • 序言:一個原本活蹦亂跳的男人離奇死亡狭郑,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出汇在,到底是詐尸還是另有隱情翰萨,我是刑警寧澤,帶...
    沈念sama閱讀 35,737評論 5 346
  • 正文 年R本政府宣布糕殉,位于F島的核電站缨历,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏糙麦。R本人自食惡果不足惜辛孵,卻給世界環(huán)境...
    茶點故事閱讀 41,360評論 3 330
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望赡磅。 院中可真熱鬧魄缚,春花似錦、人聲如沸焚廊。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,941評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽咆瘟。三九已至嚼隘,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間袒餐,已是汗流浹背飞蛹。 一陣腳步聲響...
    開封第一講書人閱讀 33,057評論 1 270
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點兒被人妖公主榨干…… 1. 我叫王不留灸眼,地道東北人卧檐。 一個月前我還...
    沈念sama閱讀 48,237評論 3 371
  • 正文 我出身青樓,卻偏偏與公主長得像焰宣,于是被迫代替她去往敵國和親霉囚。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 44,976評論 2 355

推薦閱讀更多精彩內(nèi)容

  • 前言 把《C++ Primer》[https://book.douban.com/subject/25708312...
    尤汐Yogy閱讀 9,519評論 1 51
  • 第2章 基本語法 2.1 概述 基本句法和變量 語句 JavaScript程序的執(zhí)行單位為行(line)匕积,也就是一...
    悟名先生閱讀 4,149評論 0 13
  • 內(nèi)容思路改編自白居易的《琵琶行》盈罐,內(nèi)容有所刪改 一 十月深秋,江水寒徹闪唆,秋風(fēng)蕭瑟如同此心盅粪,自從那年離開長安城已過三...
    妖_吶閱讀 642評論 0 2
  • 《擺渡人》----------崔斯坦原本平淡無奇的荒原生活,因為迪倫的到來開始變得有聲有色苞氮!雖然湾揽,迪倫帶來的麻煩也...
    蕎麥_閱讀 242評論 0 0
  • 今天碰到了一個問題can't from model import User。。库物。霸旗。。戚揭。诱告。。民晒。錯誤 查了一下原因...
    sunlin1234閱讀 3,100評論 0 0