介绍 vector是表示可变大小数组的序列容器。 就像数组一样,vector也采用的连续存储空间来存储元素。也就是意味着可以采用下标对vector的元素进行访问,和数组一样高效。但是又不像数组,它的大小是可以动态改变的,而且它的大小会被容器自动处理。 本质讲,vector使用动态分配数组来存储它的元 ...
分类:
编程语言 时间:
2020-06-19 22:35:34
阅读次数:
47
拷贝构造函数生成新的类对象,而赋值运算符是给已有的对象重新赋值。 由于拷贝构造函数是直接构造一个新的类对象,所以在初始化这个对象之前不用检验源对象是否和新对象相同。而赋值运算符则需要这个操作,另外赋值运算中如果原来的对象中已有内存分配要先把内存释放掉。 *注意:当类中有指针类型的成员变量时,一定要重 ...
分类:
其他好文 时间:
2020-06-18 11:17:33
阅读次数:
79
1.堆【heap】 (1)堆总是一颗完全二叉树【深度为K,除了k层外,1~k-1层的结点数都达到最大值,k层所有的节点都连续集中在最左边的就是完全二叉树】 (2)堆 不是在程序编译时申请内存的,而是在程序运行时向操作系统申请内存空间,即动态分配内存空间,一般是申请/给予的过程; (3)堆通常可被看作 ...
分类:
其他好文 时间:
2020-06-13 10:35:03
阅读次数:
67
因为从业三年,还未真正接触过性能测试,面试被问到 TPS(每秒事务数)上不去的原因,百度答案以及找到参考 什么是tps呢? (transaction per second) 每秒事务数,指服务器在单位时间内(秒)可以处理的事务数量,一般以request/second为单位。 原因参考大神提供的有以下 ...
分类:
其他好文 时间:
2020-06-12 14:54:55
阅读次数:
71
一、 堆(heap)和栈(stack) 栈(stack)会自动分配内存空间,会自动释放。堆(heap)动态分配的内存,大小不定也不会自动释放。 二、 基本类型和引用类型 基本类型:简单的数据段,存放在栈内存中,占据固定大小的空间。 引用类型:指那些可能由多个值构成的对象,保存在堆内存中,包含引用类型 ...
分类:
Web程序 时间:
2020-06-09 11:21:06
阅读次数:
100
链表操作 在c语言里我们通过结构体和数组这两种数据结构构造线性表 创建顺表表-数组静态分配内存 typedef struct { char data[10]; int length; }SqList; bool ListInsert(SqList &L,int i,char e){ for (int ...
分类:
编程语言 时间:
2020-06-08 19:18:56
阅读次数:
101
#include <stdio.h> void fun(int** q); void fun2(int** q); main() { int* p; //把p的二级指针传给fun fun(&p); printf("%d", *p); //动态分配内存 fun2(&p); } // void fun( ...
分类:
其他好文 时间:
2020-05-31 16:20:15
阅读次数:
62
JVM 深入理解JVM(2)——GC算法与内存分配策略 Posted by Crow on August 10, 2017 说起垃圾收集(Garbage Collection, GC),想必大家都不陌生,它是JVM实现里非常重要的一环,JVM成熟的内存动态分配与回收技术使Java(当然还有其他运行在 ...
分类:
编程语言 时间:
2020-05-30 22:00:10
阅读次数:
71
1、栈(stack)和堆(heap) stack为自动分配的内存空间,它由系统自动释放;而heap则是动态分配的内存,大小也不一定会自动释放 2、数据类型 JS分两种数据类型: 基本数据类型:Number、String、Boolean、Null、 Undefined、Symbol(ES6),这些类型 ...
分类:
Web程序 时间:
2020-05-29 19:27:12
阅读次数:
75
在C语言中,动态分配内存用 malloc() 函数,释放内存用 free() 函数;在C++中,这两个函数仍然可以使用,但是C++又新增了两个关键字,new 和 delete:new 用来动态分配内存,delete 用来释放内存。 ...
分类:
编程语言 时间:
2020-05-22 09:51:23
阅读次数:
47