最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊(cè)

(三) c++ 初始化、線程、回調(diào)函數(shù)與lambda表達(dá)式

2023-04-01 17:54 作者:FineClassFuture  | 我要投稿

初始化

????一開始學(xué)C++,都是被告知說(shuō)使用初始化列表(可以保證初始化順序)。

????但是呢,一個(gè)類內(nèi)成員變量很多時(shí),初始化列表會(huì)變得很長(zhǎng),即使折行也使得構(gòu)造函數(shù)太難看了。

????這時(shí)可以使用定義時(shí)初始化。《Effective Modern C++》條款7 對(duì)象初始化 {} vs. ()

????習(xí)慣了C就會(huì)習(xí)慣使用0或者NULL,但在C++中《Effective Modern C++》條款8 優(yōu)先選用nullptr


自己的思想:

????1. 保持純粹的初始化,不使用如下行為

????2. 應(yīng)該是優(yōu)先使用{}來(lái)初始化吧。

????3. 申請(qǐng)/釋放:在明確使用情況下使用C++智能指針,否則繼續(xù)保持C思維,自己申請(qǐng)自己釋放(生命周期掌握在自己手里,才能更好地去統(tǒng)籌資源)



線程

????在Linux下,std::thread封裝自pthread,所以是否有必要使用std::thread?

????既然是學(xué)習(xí),那就用吧

????thread_local C和C++都有,線程生命周期內(nèi)都存在,所以利用thread_local可以做一些提高效率的事情:(來(lái)自網(wǎng)絡(luò)文章介紹)

正常情況下線程生命周期內(nèi)pid/tid都不會(huì)變

線程有時(shí)候需要睡眠:(來(lái)自網(wǎng)絡(luò)文章介紹)

該質(zhì)疑是網(wǎng)絡(luò)文章介紹中的質(zhì)疑

習(xí)慣C思維的簡(jiǎn)單封裝

atomic只保證自己,可以做自旋鎖,但不能做互斥鎖來(lái)保護(hù)資源

做個(gè)簡(jiǎn)單提示???

其他

沒(méi)考慮異常安全,可能存在資源泄漏問(wèn)題


回調(diào)函數(shù)

? ? (都是沒(méi)有接觸學(xué)習(xí)過(guò)的新知識(shí))

????使用std::function類型指針????

? ? 同時(shí)《Effective Modern C++》條款9 用using替代typedef

? ? 使用回調(diào)者很簡(jiǎn)單

????被回調(diào)者怎么傳入?

????std::function和std::bind

????《Effective Modern C++》條款34 優(yōu)先lambda式,而非bind

????視頻說(shuō)的情況還沒(méi)完全理解

????目前就簡(jiǎn)單使用lambda表達(dá)式做中轉(zhuǎn)

相對(duì)于std::bind更明了

????

目前運(yùn)行良好,以后有問(wèn)題再繼續(xù)深入學(xué)習(xí)。


(三) c++ 初始化、線程、回調(diào)函數(shù)與lambda表達(dá)式的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國(guó)家法律
大名县| 洪泽县| 商丘市| 应用必备| 克拉玛依市| 广水市| 罗田县| 屯留县| 西丰县| 筠连县| 吴旗县| 同心县| 诸城市| 陵川县| 军事| 济阳县| 仙游县| 红桥区| 濮阳市| 连江县| 平昌县| 涞源县| 建平县| 云浮市| 葫芦岛市| 龙南县| 尚义县| 林口县| 二连浩特市| 景东| 阿图什市| 抚宁县| 得荣县| 安仁县| 奉新县| 金湖县| 乾安县| 阿合奇县| 乐安县| 新乡县| 仁怀市|