2012年5月8日

内存动态分配与释放

摘要: 1.C语言的函数malloc和free(1)函数malloc和free在头文件<stdlib.h>中的原型及参数 void * malloc(size_t size)动态配置内存,大小有size决定,返回值成功时为任意类型指针,失败时为NULL。 void free(void *ptr)释放动态申请的内存空间,调用free()后ptr所指向的内存空间被收回,如果ptr指向未知地方或者指向的空间已被收回,则会发生不可预知的错误,如果ptr为NULL,free不会有任何作用。(2) C语言中典型用法 T为任意数据类型 T *p = ( T * )malloc( sizeof(T) * 阅读全文

posted @ 2012-05-08 17:19 yfan.qiu 阅读(11508) 评论(0) 推荐(3) 编辑

关于C++复制构造函数

摘要: 复制构造函数(copy constructor):单个对本类类型引用形参(常用const修饰)。当定义一个新对象并用同一个类型的对象对它进行初始化式,将显式使用复制构造函数,当该类型的对象传递给函数或从函数返回该类类型的对象时,将隐式调用复制构造函数。复制构造函数的形参可以不为const,但必须是一个引用。否则每当以pass-by-value传递参数时,调用一个复制构造函数都会导致无穷递归。如果不定义复制构造函数,编译器将合成一个,因此若要完全禁止复制(iostream类就不允许复制),禁止用户复制该类类型而且连友元和成员函数都不能进行复制:在private中声明但不定义一个复制构造函数。用户 阅读全文

posted @ 2012-05-08 12:59 yfan.qiu 阅读(1326) 评论(0) 推荐(1) 编辑

导航