首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
C++
订阅
JasonZhao123
更多收藏集
微信扫码分享
微信
新浪微博
QQ
49篇文章 · 0订阅
C/C++代码底层那些事(C++程序员需掌握的知识)--从虚拟内存,函数堆栈调用过程,编译链接原理来理解代码
首先,要搞明白任何编程语言只会产生两种东西: 指令和数据。 比如Linux下的可执行文件,windows的exe文件。它们本质上是(CPU)指令和一组数据集。 现代操作系统往往引入一个概念比如Linux会给当前进程分配一个2的32次幂(4G)的一块空间。(64位操作系统位2的6…
一文入门Linux下gdb调试(一)
在window下我们习惯了IDE的各种调试按钮,说实话确实挺方便的,但到了Linux下,没有那么多的IDE支持我们调试,但是Linux有也有强大的命令行C/C++的调试工具——GDB,GNU提供的开源调试工具。 刚开始不习惯,使用多了我们就会喜欢上他,程序调试的单步执行,跳入函…
搞定技术面试:C++ 11 智能指针详解
经过调试后,最终发现导致内存泄漏的地点是一个频繁调用的函数中,有一定概率使四个指针没有释放,每个指针大小应该与内存宽度一致,也就是每个指针为 64位 8字节,四个指针就是32字节。而小小的32字节的泄露积蓄的能量可以达到数十G空间直至吃掉所有内存。 本文介绍一种不借助其他检测工…
C++ 模板常见特性(函数模板、类模板)
C++ 是很强大,有各种特性来提高代码的可重用性,有助于减少开发的代码量和工作量。 继承的特性我已在前面篇章写过了,本篇主要是说明「模板」的特性。 使用「模板」的特性设计,实际上也就是「泛型」程序设计。 那如果是其他变量类型的值交换,那不是每次都要重新写一次 Swap 函数?是…
C++概念:右值引用,移动语义,完美转发
1. 右值引用 C++11以前,右值被认为是无用的资源,所以在C++11中引入了右值引用,就是为了重用右值。定义右值引用需要使用&&。 右值引用一定不能被左值所初始化,只能用右值初始化。那么为什么呢?因为右值引用的目的是为了延长用来初始化对象的生命周期,对于…
聊一聊 C++的特性 explicit && 匿名空间
用于修饰 class 的数据成员,即所谓“静态成员”。这种数据成员的生存期大于 class 的对象(实例/instance)。静态数据成员是每个 class 有一份,普通数据成员是每个 instance 有一份,因此也分别叫做 class variable 和 instance…
现代 C++:一文读懂智能指针
std::unique_ptr<T> :独占资源所有权的指针。 std::shared_ptr<T> :共享资源所有权的指针。 std::weak_ptr<T> :共享资源的观察者,需要和 std::shared_ptr 一起使用,不影响资源的生命周期。 std::auto_p…
一次性搞定右值,右值引用(&&),和move语义
英文版发表在hackernoon并在我的博客存档。 本文是汉化重制版。 简单点说,右值就是在等号右边的值。 够简单吧。我们看一个更隐晦的情况,函数返回右值。 注意,我在例子里函数返回左值只是为了做演示,现实生活中请勿模仿。 其实,在右值引用(&&)发明之前,右值就已经可以影响代…
C++ 一篇搞懂多态的实现原理
virtual 关键字只用在类定义里的函数声明中,写函数体时不用。 的是派生类的虚函数。 这种机制就叫做“多态”,说白点就是调用哪个虚函数,取决于指针对象指向哪种类型的对象。 上例子中的 p 指针对象指向的是 CSon 类对象,所以 p->Fun() 调用的是 CSon 类里的…
技术干货丨通过wrap malloc定位C/C++的内存泄漏问题
用C/C++开发的程序执行效率很高,但却经常受到内存泄漏的困扰。本文提供一种通过wrap malloc查找memory leak的思路,依靠这个方法,笔者紧急解决了内存泄漏问题,避免项目流血上大促,该方法在日后工作中大放光彩,发现了项目中大量沉疴已久的内存泄漏问题。 动态申请的…