动态内存分配和释放: 动态构造一维数组: 假设动态构造一个Int型数组: 1.malloc只有一个int型的形参,表示要求系统分配的字节数 2.malloc函数的功能是请求系统分配len个字节的内存空间,如果请求成功,则返回第一个字节的地址,如果请求失败,则返回NULL。 3.malloc函数能且只 ...
分类:
编程语言 时间:
2019-07-27 18:29:34
阅读次数:
119
1.什么是数组: 数组就是这样的一个容器,用于存储长度固定的,类型相同的变量的 2.数组特点:长度固定,类型相同 3.数组的分类 : 一维数组,多维数组,不规则数组 4.数组的应用 : 创建,赋值, 应用 5.C# 支持多维数组。多维数组又称为矩形数组:多维数组最简单的形式是二维数组。一个二维数组, ...
分类:
编程语言 时间:
2019-07-06 13:42:27
阅读次数:
172
JVM虚拟机 寄存器: 最快的存储区,位于处理器内部,但是数量极其有限。所以寄存器根据需求进行自动分配,无法直接人为控制 堆区: 位于RAM当中,一种通用的内存池。其中存放的数据由JVM自动进行管理。 jvm只有一个堆区(heap)被所有线程共享,只存放对象本身。 又称动态内存分配,当需要一个对象时 ...
分类:
编程语言 时间:
2019-06-15 20:44:14
阅读次数:
141
学习 C 语言的指针既简单又有趣。通过指针,可以简化一些 C 编程任务的执行,还有一些任务,如动态内存分配,没有指针是无法执行的。所以,想要成为一名优秀的 C 程序员,学习指针是很有必要的。 正如您所知道的,每一个变量都有一个内存位置,每一个内存位置都定义了可使用连字号(&)运算符访问的地址,它表示 ...
分类:
其他好文 时间:
2019-06-11 23:39:56
阅读次数:
285
new/delete,malloc/free,构造函数,析构函数,dynamic_cast ...
分类:
编程语言 时间:
2019-05-24 11:02:26
阅读次数:
108
C++的内存管理与内存分配方式,实际上是两个问题。 C++程序在编译与运行过程中,实际上可能用到五种存储区域。 而在分配内存时,有三种方式 ...
分类:
编程语言 时间:
2019-03-23 00:59:37
阅读次数:
170
智能指针是行为类似于指针的类对象,但这种对象还有其他功能。 本节介绍三个可帮助管理动态内存分配的智能指针模板(auto_ptr、unique_ptr和shared_ptr)。 void remodel(std:string & str) { std::string * ps = new std::s ...
分类:
编程语言 时间:
2019-03-08 00:28:48
阅读次数:
222
动态内存分配 1.1 为什么使用动态内存分配 直接声明数组的方式的缺点: 1) 声明数组必须指定长度限制.无法处理超过声明长度的数组. 2) 如果声明更大的常量来弥补第一个缺点,会造成更多的内存浪费. 3)如果输入数组的数据超过来数组的容纳范围,程序必须以一种合理的方式作出响应.但是程序员一般不会做 ...
分类:
其他好文 时间:
2019-02-28 18:35:42
阅读次数:
215
Boost库的pool提供了一个内存池分配器,用于管理在一个独立的、大的分配空间里的动态内存分配。 Boost库的pool主要适用于快速分配同样大小的内存块,尤其是反复分配和释放同样大小的内存块的情况。使用pool内存池主要有以下两个优点: 1. 能够有效地管理许多小型对象的分配和释放工作,避免了自 ...
分类:
其他好文 时间:
2019-02-27 11:51:02
阅读次数:
439
//创建对象数组 #include<iostream> using namespace std; class Point { public: Point() { X=Y=0; cout<<"Default Constructor called."<<endl; } Point(int xx,int ...
分类:
编程语言 时间:
2019-01-08 15:17:10
阅读次数:
280