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

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

使用C++ new的正確姿勢

2023-03-02 16:07 作者:大寶子大寶子大寶子  | 我要投稿


假設(shè)有上面一個類,在沒有調(diào)用set_new_handler函數(shù)接管堆內(nèi)存耗盡處理的前提下,用new關(guān)鍵字在堆上創(chuàng)建一個CppObject的實例,通常會看到這樣的代碼:

因為看多了這樣的代碼,大家就習(xí)慣了用 if (nullptr == pCppObj) 作為判斷堆內(nèi)存上創(chuàng)建一個對象失敗與否的標(biāo)準(zhǔn),缺了它就覺得渾身不自在。萬一系統(tǒng)內(nèi)存消耗殆盡,沒有new到內(nèi)存,如果不用 if (nullptr == pCppObj)防御一下,就對對象指針 pCppObj一頓操作,程序豈不是要掛機(jī)了?

if (nullptr == pCppObj) 真的有必要嗎?

回答是:真的沒必要。即使你這么做了,也不會帶來任何收益,且看下面示例。

有沒有動手試下,情況是不是屬實?難道 if (nullptr == pCppObj)防御大法對C++不管用?

其實管用的,只不過正確的姿勢如下:


水平有限,歡迎交流指正。


使用C++ new的正確姿勢的評論 (共 條)

分享到微博請遵守國家法律
辽宁省| 个旧市| 老河口市| 松江区| 龙江县| 安阳县| 汝南县| 普宁市| 永川市| 扎兰屯市| 通许县| 大邑县| 廊坊市| 郑州市| 大理市| 宜兰市| 四子王旗| 永兴县| 阿鲁科尔沁旗| 巴彦淖尔市| 土默特右旗| 方正县| 宣武区| 金溪县| 城固县| 岳普湖县| 巴塘县| 房产| 科技| 大石桥市| 大冶市| 息烽县| 阿勒泰市| 丹东市| 抚顺县| 正阳县| 旬阳县| 本溪| 合作市| 和政县| 澄江县|