- C和C++安全編碼(原書第2版)
- (美)Robert C.Seacord
- 285字
- 2020-10-30 17:56:43
2.4.6 使用basic_string的其他常見錯(cuò)誤
使用basic_string類的其他常見的錯(cuò)誤包括如下內(nèi)容。
·使用無效或者未初始化的迭代器
·傳遞出界的索引
·使用實(shí)際上不是一個(gè)區(qū)間的迭代器區(qū)間
·傳遞一個(gè)無效的迭代器位置
Herb Sutter和Andrei Alexandrescu所著的《C++編程規(guī)范:101條規(guī)則、準(zhǔn)則和最佳實(shí)踐》[Sutter 2005]中詳細(xì)討論了這些問題。
最后,許多現(xiàn)有的C++程序和庫(kù)使用自己的字符串類。要使用這些程序庫(kù),你可能需要使用這些字符串類型或不斷地來回轉(zhuǎn)換。這種庫(kù)在安全方面,質(zhì)量參差不齊。通常最好使用標(biāo)準(zhǔn)庫(kù)(如果可能),或完全理解所選擇的庫(kù)的語義。一般來說,庫(kù)應(yīng)在如下的基礎(chǔ)上進(jìn)行評(píng)估:使用的簡(jiǎn)單或復(fù)雜性、可能犯的錯(cuò)誤類型、是否容易犯這些錯(cuò)誤、潛在的后果可能是什么。
推薦閱讀
- Java高并發(fā)核心編程(卷2):多線程、鎖、JMM、JUC、高并發(fā)設(shè)計(jì)模式
- JavaScript+jQuery網(wǎng)頁特效設(shè)計(jì)任務(wù)驅(qū)動(dòng)教程(第2版)
- HoloLens Beginner's Guide
- Visual Basic程序設(shè)計(jì)(第3版):學(xué)習(xí)指導(dǎo)與練習(xí)
- Bootstrap Essentials
- Java Web開發(fā)技術(shù)教程
- Big Data Analytics
- 零基礎(chǔ)學(xué)Python網(wǎng)絡(luò)爬蟲案例實(shí)戰(zhàn)全流程詳解(高級(jí)進(jìn)階篇)
- 高級(jí)語言程序設(shè)計(jì)(C語言版):基于計(jì)算思維能力培養(yǎng)
- Node.js Design Patterns
- QGIS 2 Cookbook
- TypeScript圖形渲染實(shí)戰(zhàn):2D架構(gòu)設(shè)計(jì)與實(shí)現(xiàn)
- Robot Framework Test Automation
- AutoCAD基礎(chǔ)教程
- 關(guān)系數(shù)據(jù)庫(kù)與SQL Server 2012(第3版)