![](https://img-blog.csdnimg.cn/20201014180756780.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
c && c++
片羽时光
这个作者很懒,什么都没留下…
展开
-
引用与指针之间的故事
这里主要介绍C++中引用与指针的区别与联系。 1.指针是用来存储地址的一种变量,引用则是给变量起的一个别名。 2.引用在逻辑上相当于变量的别名,在内存中实际上相当于指向不能改变但所指之物的内容可以改变的一个指针。例如 int &p=a;就相当于 int *const p=&a; 3.指针可以是多级指针,但引用不能是多级引用,也就是说没有引原创 2017-09-18 18:38:14 · 294 阅读 · 0 评论 -
在编译链接过程中定义与声明的区别
声明仅仅是将一个符号引入到一个作用域。而定义提供了一个实体在程序中的唯一描述。在一个给定的定义域中重复声明一个符号是可以的,但是却不能重复定义,否则将会引起编译错误。但是在类中的成员函数和静态数据成员却是例外,虽然在类内它们都是声明,但是也不能有多个。 明白了声明与定义的区别,还需要明白 内部链接、外部链接。只有明白了它们你才会知道开头提出的问题。 ...转载 2018-03-08 09:47:34 · 671 阅读 · 0 评论 -
malloc与new的区别,free与delete的区别
new和malloc的区别是C/C++一道经典的面试题,今天特意整理了一下。0. 属性new/delete是C++关键字,需要编译器支持。malloc/free是库函数,需要头文件支持。1. 参数使用new操作符申请内存分配时无须指定内存块的大小,编译器会根据类型信息自行计算。而malloc则需要显式地指出所需内存的尺寸。2. 返回类型new操作符内存分配成功时...转载 2018-03-08 21:55:13 · 184 阅读 · 0 评论 -
linux内存管理之malloc、vmalloc、kmalloc的区别
1、kmalloc和vmalloc是分配的是内核的内存,malloc分配的是用户的内存2、kmalloc保证分配的内存在物理上是连续的,内存只有在要被DMA访问的时候才需要物理上连续,malloc和vmalloc保证的是在虚拟地址空间上的连续3、kmalloc能分配的大小有限,vmalloc和malloc能分配的大小相对较大4、vmalloc比kmalloc要慢。尽管在某些情况下才需要物理上连续的...转载 2018-03-09 09:12:09 · 771 阅读 · 0 评论