如果您碰到SQLServer服务造成内存不断扩展最终系统死机等情况,请按照以下方法解决。原理:SQLServer2000引入的动态内存分配机制,一般不能很好的回收内存,如果计算机一直不关闭,就会发生内存耗尽的可能。您可以选择每周关机一次来避免,或者是按照下述方法来抑制内存的增长。1、在服务器上开始—...
分类:
数据库 时间:
2014-07-11 10:48:09
阅读次数:
235
动态内存与智能指针(3)
/**
* 功能:动态内存与智能指针
* 时间:2014年7月8日15:33:58
* 作者:cutter_point
*/
#include
#include
#include
#include
using namespace std;
/**
智能指针和异常
*/
void f()
{
shared_ptr sp(new int(42)); ...
分类:
编程语言 时间:
2014-07-09 09:08:04
阅读次数:
161
动态内存与智能指针(2)
直接管理内存
void fun1()
{
//此new表达式在自由空间构造一个int型对象,并返回指向该对象的指针
int *pi1=new int; //pi指向一个动态分配、未初始化的无名对象
string *ps3=new string; //初始化为空string
int *pi2=new int; ...
分类:
编程语言 时间:
2014-07-08 15:51:21
阅读次数:
269
专题:动态内存分配(所有高级语言,没有C里深刻)传统数组的缺点:1.数组长度必须事先指定,而且只能是常整数,不能是变量例子int a[5]; //必须事先指定,而且只能是常整数 int len = 5; int a[len];//error 2.传统形式定义的数组,该数组的内存程序...
分类:
编程语言 时间:
2014-07-07 22:13:17
阅读次数:
293
c/c++动态分配内存为什么需要动态分配内存---很好的解决的了传统数组的4个缺陷动态内存分配举例---动态数组的构造 使用动态数组的优点: 1. 动态数组长度不需要事先给定; 2. 内存空间可以手动释放; 3. 在程序运行中, 动态内存空间大小可以通过realloc函数手动扩充或缩小 ...
分类:
编程语言 时间:
2014-07-07 21:31:34
阅读次数:
326
动态内存可以跨函数使用示例# include # include void f(int ** q){ *q = (int *)malloc(sizeof(int)); //sizeof(数据类型) 返回值是该数据类型所占的字节数 //等价于 p = (int *)mall...
分类:
其他好文 时间:
2014-07-07 17:54:08
阅读次数:
209
函数体内的局部变量在函数结束时自动消亡。很多人误以为示例7-6是正确的。理由是p是局部的指针变量,它消亡的时候会让它所指的动态内存一起完蛋。这是错觉!voidFunc(void){char*p=(char*)malloc(100);//动态内存会自动释放吗?}我们发现指针有一些“似是而非”的特征:(...
分类:
其他好文 时间:
2014-06-26 22:39:36
阅读次数:
326
如果函数的参数是一个指针,不要指望用该指针去申请动态内存。示例7-4-1中,Test函数的语句GetMemory(str, 200)并没有使str获得期望的内存,str依旧是NULL,为什么?voidGetMemory(char*p,intnum){p=(char*)malloc(sizeof(.....
分类:
其他好文 时间:
2014-06-26 22:11:55
阅读次数:
301
malloc与free是C++/C语言的标准库函数,new/delete是C++的运算符。它们都可用于申请动态内存和释放内存。 对于非内部数据类型的对象而言,光用maloc/free无法满足动态对象的要求。对象在创建的同时要自动执行构造函数,对象在消亡之前要自动执行析构函数。由于malloc/fr....
分类:
其他好文 时间:
2014-06-25 15:23:39
阅读次数:
210
动态内存分配一、存储区划分从低到高(内存地址小----内存地址大) : 代码区---常量区---静态区---堆区---栈区栈内存//凡是在函数体内定义的变量 都存储在栈区(包括形参)。 int a = 10;//a也是在栈区域里面 float b = 1.5;//b也是在栈区域里面 ...
分类:
移动开发 时间:
2014-06-20 21:07:40
阅读次数:
274