我們平時使用C++開發(fā)過程中或多或少都會使用std::string,但您了解string具體是如何實現(xiàn)的嗎,這里程序喵給大家從源碼角度分析一下。 讀完本文相信您可以回答以下問題: ▼ string的常見的實現(xiàn)方式有幾種? ▼ ?string類的內(nèi)部結(jié)構(gòu)是什么樣子? ▼ ?string內(nèi)
如何快速熟悉一個對你來說完全陌生的項目?這可能是很多人都會遇到的難題。但如果掌握了方法論,它也可以是一道加分題。 最近有位粉絲朋友也遇到了同樣的問題,尋求我的意見,其實我和大家一樣,走了不少彎路。痛定思痛,程序喵總結(jié)了下自己之前熟悉新項目的
程序喵之前已經(jīng)介紹過C++11的新特性和C++14的新特性(點擊對應(yīng)文字,直接訪問),今天向親愛的讀者們介紹下C++17的新特性,現(xiàn)在基本上各個編譯器對C++17都已經(jīng)提供完備的支持,建議大家編程中嘗試使用下C++17,可以一定程度上簡化代碼編寫,提高編程效率。 主
前面程序喵介紹過C++11的新特性,這篇文章介紹下C++14的新特性。 「函數(shù)返回值類型推導(dǎo)」 C++14對函數(shù)返回類型推導(dǎo)規(guī)則做了優(yōu)化,先看一段代碼: #include
你知道一次gcc命令究竟經(jīng)歷了什么嗎? 我們先來看一段C語言示例源代碼: // test.cc#include
非常感謝大家的關(guān)注,為了不讓大家關(guān)注的不明不白,在此用三言兩語介紹下小弟,如果大家愿意交個朋友,交流編程,求職,籃球,提升自我那些事兒,可以掃描文末二維碼哈。 ? 我來自東北28線城市的農(nóng)村,上學(xué)的時候打籃球占據(jù)了我一半以上的生活,是的,比學(xué)習(xí)
內(nèi)存泄漏是指由于疏忽或錯誤造成程序未能釋放已經(jīng)不再使用的內(nèi)存。內(nèi)存泄漏并非指內(nèi)存在物理上的消失,而是應(yīng)用程序分配某段內(nèi)存后,由于設(shè)計錯誤,導(dǎo)致在釋放該段內(nèi)存之前就失去了對該段內(nèi)存的控制,從而造成了內(nèi)存的浪費。 我們平時開發(fā)過程中不可避免的會
2020,形勢大變! 過去的互聯(lián)網(wǎng)驕子們,如今不得不面對現(xiàn)實, 紛紛另尋出路。 那么,他們轉(zhuǎn)行后都適合做什么呢? 讓我們一探究竟: ·自媒體人· - - - ·乙方· - - - ·程序員· - - - ·產(chǎn)品經(jīng)理· ·媒介· ·策劃· ·商務(wù)· ·設(shè)計· ·畫手· ·社群運
在多線程開發(fā)過程中很多人應(yīng)該都會遇到死鎖問題,死鎖問題也是面試過程中經(jīng)常被問到的問題,這里介紹在c++中如何使用gdb+python腳本調(diào)試死鎖問題,以及如何在程序運行過程中檢測死鎖。 首先介紹什么是死鎖,看下維基百科中的定義: 死鎖(英語:Deadlock),
大家平時使用Linux系統(tǒng)過程中可能都見過文件系統(tǒng)里有好多帶版本號的共享庫,如下: lrwxrwxrwx 1 root root 21 Mar 25 18:33 libDeployPkg.so.0 -> libDeployPkg.so.0.0.0-rw-r--r-- 1 root root 31304 Mar 25 18:33 libDeployPkg.so.0.0.0lrwxrwxrwx 1 root
程序喵之前都在介紹Linux和C++方面的知識,這里穿插一篇Java JNI相關(guān)的知識點,總結(jié)一下自己平時工作心得,相信會對做JNI編程的同學(xué)有所幫助。 背景: 作者目前在做Android項目,但大多數(shù)邏輯都會在Native層實現(xiàn),不可避免的需要在Native層使用C++去調(diào)用Java
在前面的文章中程序喵已經(jīng)介紹過靜態(tài)鏈接的原理,這篇文章我們來解密動態(tài)鏈接。 老規(guī)矩,先拋出幾個問題: 為什么要進行動態(tài)鏈接? 如何進行動態(tài)鏈接? 什么是地址無關(guān)代碼技術(shù)? 什么是延遲綁定技術(shù)? 如何在程序運行過程中進行顯式鏈接? 為什么要進行動態(tài)
先拋出兩個問題: 指針和引用有什么區(qū)別? 什么時候應(yīng)該使用指針?什么時候應(yīng)該使用引用? 01 指針和引用的區(qū)別 首先看一段代碼: int a = 1;int b = 2;int *c = nullptr;c = &a;int &d = b; 指針其實就是一個存放內(nèi)存地址的整數(shù),這個整數(shù)表示的是被指向的變
開篇先拋出幾個問題,之后逐個擊破: 什么是進程的虛擬地址空間?為什么進程要有自己的虛擬地址空間,這樣做有什么好處? 我們都聽說過頁映射,什么是頁映射,操作系統(tǒng)為什么要以頁映射方式將程序映射到進程地址空間,這樣做有什么好處?程序運行過程中發(fā)生頁
289117336
Tronlong創(chuàng)龍
詹姆斯6個MVP
hujiaqi06
大有可為
MXX1597759
xingnan123
xiaoguaixh
liqinglong1023