小万哥 小万哥
1年前
C++智能指针和内存管理:使用指南和技巧
C是一门强大的编程语言,但是在内存管理方面却存在着一些问题。手动管理内存不仅费时费力,而且容易出错。因此,C中引入了智能指针这一概念,以更好地管理内存。什么是智能指针?在C中,内存的分配和释放都是由开发者手动实现的。这种方式虽然很灵活,但也十分
Stella981 Stella981
3年前
JavaScript的深拷贝和浅拷贝
一、数据类型数据分为基本数据类型(String,Number,Boolean,Null,Undefined,Symbol)和对象数据类型。、1.基本数据类型的特点:直接存储在栈(stack)中的数据2.引用数据类型的特点:存储的是该对象在栈中引用,真实的数据放在堆内存里。引用数据类型在栈中存储了指针,该指针指向堆中该实
Stella981 Stella981
3年前
Android NDK开发之C语言基础及指针①
我们知道,Android系统是基于linux开发,采用的是linux内核,AndroidAPP开发大部分也要和系统打交道,只是AndroidFrameWork帮我们屏蔽了系统操作,我们从Android系统的分成结构可以看出,AndroidFrameWork是通过JNI与底层的C/C库交互,例如:FreeType,O
Stella981 Stella981
3年前
Python递归函数、匿名函数、过滤函数
递归函数Python对递归的深度有限制,超过即会报错。所以一定一要注意跳出条件。斐波拉契数列一个数列,第一个数是1,第二个数也是1,从第三个数开始,每一个数是前两个数之和公式:f(1)1,f(2)1,f(3)f(1)f(2),...,f(n)f(n2)f(n1)
Stella981 Stella981
3年前
Golang高效实践之array、slice、map实践
前言Golang的slice类型为连续同类型数据提供了一个方便并且高效的实现方式。slice的实现是基于array,slice和map一样是类似于指针语义,传递slice和map并不涉及底层数据结构的拷贝,相当于传递底层数据结构的指针。Arrays数组 数组类型的定义需要指定长度和元素的类型。例如,\4\int表示一个四个整数
Wesley13 Wesley13
3年前
Java三元表达式中的陷阱
今天遇到一个奇怪的Java三元表达式中的空指针异常。特此记录。代码代码示意如下:IntegeritemVOnull;IntegerglobleLatenessToleranceUseAlternatenull;IntegerlatenessToleranceUseAlternate
Wesley13 Wesley13
3年前
MySql的数据库优化到底优啥了都??(4)
  上回刚刚讲到了BTree这次来简单学学BTree索引  BTree中每个节点包含:  1.本节点所含关键字的个数。  2.指向父节点的指针  3.关键字  4.指向子节点的指针  关于BTree的规则  1.m阶的BTree每个结点至多可以拥有m个子节点,根结点至少有两个子节点  2.根结点的关键字(key)
Stella981 Stella981
3年前
Rust编程进阶:035、Rc智能指针介绍
Rc<T,引用计数器,用来记录一个值是否被使用,如果计数为零可清除。适用于堆中数据需要被程序多部分使用,但编译时不能确定谁最后完成。大部分情况下所有权是非常明确的:可以准确的知道哪个变量拥有某个值。然而,有些情况单个值可能会有多个所有者。例如,在图数据结构中,多个边可能指向相同的结点,而这个结点从概念上讲为所有指向它的边所拥有。结点直到没有任何边指
Stella981 Stella981
3年前
Python C 扩展的引用计数问题探讨
PythonGC机制对于Python这种高级语言来说,开发者不需要自己管理和维护内存。Python采用了引用计数机制为主,标记清除和分代收集两种机制为辅的垃圾回收机制。首先,需要搞清楚变量和对象的关系:变量:通过变量指针引用对象。变量指针指向具体对象的内存空间,取对象的值。对象,类型已知,每个对象都包
京东云开发者 京东云开发者
8个月前
Lombok注解引发的空指针问题分析
一、问题描述在一次上线后,日志中出现空指针的报错,但是报错代码位置以及相应工具类未进行过修改,接下来进一步分析。以下为报错堆栈信息:java.lang.NullPointerException:nullatnet.sf.cglib.core.Reflect