当前位置: 首页 > wzjs >正文

中国空间站成功对接flash网站开发框架

中国空间站成功对接,flash网站开发框架,教育视频培训网站建设,如何建立微网站详细步骤目录 1.new运算符的基本使用 2.new运算符的注意事项 3.new运算符开辟数组 4.静态成员变量 5.静态成员函数 6.单例模式 7.主席类案例 8.打印机类案例 1.new运算符的基本使用 说明: 我们知道在C语言中,数组一旦声明,就确定了内存的大小…

目录

1.new运算符的基本使用

2.new运算符的注意事项

3.new运算符开辟数组

4.静态成员变量

5.静态成员函数

6.单例模式

7.主席类案例

8.打印机类案例


1.new运算符的基本使用

说明: 我们知道在C语言中,数组一旦声明,就确定了内存的大小,如果想动态进行扩展,就需要自己实现动态数组,将数组创建在堆区。 C中提供了标准函数 malloc、calloc和realloc可以将数据开辟在堆区,free可以释放堆区数据 利用C的方式如果想在C++中实现动态数组的创建我们需要做以下几件事:  计算好数组的大小后,再利用malloc进行申请  malloc返回void*,C++不允许直接给void*赋值到其他类型的指针,需要强转  malloc代码写好后,需要检测内存是否申请成功,进行判断  一些初始化和释放的函数需要手动进行调用,如果忘记则出错 结论: C语言中的动态分配内存较为复杂,因此我们推荐在C++中使用new和delete运算符  

说明: delete用于释放new出来的内存,先调用析构函数,然后释放内存。 正如new表达式返回一个指向对象的指针一样,delete需要一个对象的地址。 delete只适用于由new创建的对象。 如果使用一个由malloc或者calloc或者realloc创建的对象使用delete,这个行为是未定义的。因为大多数new和delete的实现机制都使用了malloc和free,所以很可能没有调用析构函数就释放了内存。 如果正在删除的对象的指针是NULL,将不发生任何事,因此建议在删除指针后,立即把指针赋值为NULL,以免对它删除两次,对一些对象释放两次可能会产生错误

2.new运算符的注意事项

区别: 1、malloc是C创建堆区数据的库函数,new是C++创建堆区数据的运算符 2、malloc对应释放的库函数是free,new对应释放的运算符是delete ,不可以混用 3、malloc返回值是void*, new返回创建对象的指针类型 4、malloc不会调用构造,free不会调用析构,new自动调用构造函数,delete自动调用析构函数 5、malloc需要显式地指出所需内存的大小,new申请内存分配时无需指定内存块的大小,编译器会根据类型自行计算。

3.new运算符开辟数组

说明: 利用new在堆区开辟数组很简单,在类型后面加上中括号,并在中括号中写好数组长度即可 举例: int * pInt = new int[10];           //在堆区开辟10个int类型大小的数组 double* pDouble = new double[10];       //在堆区开辟10个double类型大小的数组 char * pChar = new char[10];           //在堆区开辟10个char类型大小的数组 Person * pArray = new Person[10];      //在堆区开辟10个Person类型大小的数组 注:创建自定义数据类型时,该类型必须有默认构造函数,否则创建失败

4.静态成员变量

说明: 在一个类中,若将一个成员变量前声明为static,这种成员称为静态成员变量。 特点: 与普通成员变量不同,静态成员只有一份,它不属于某个对象,而属于某个类,被所有对象共享 静态成员变量在编译阶段就分配空间,也就是对象还没有创建时,就已经分配空间 静态成员变量必须在类内声明,在类外初始化 静态成员变量可以通过对象或者类名两种方式进行访问 静态成员变量也有访问权限

5.静态成员函数

说明: 在一个类中,若将一个成员函数前声明为static,这种成员称为静态成员函数。 特点: 静态成员函数也只有一份,被所有对象共享 静态成员函数只能访问静态成员变量,而不能访问非静态成员变量 普通成员函数即可以访问静态成员变量,也可以访问非静态成员变量 静态成员函数可以通过对象或者类名两种方式进行访问 静态成员函数也有访问权限

6.单例模式

说明: 单例模式是一种常用的软件设计模式。 在它的核心结构中,只包含一个被称为单例的特殊类。 通过单例模式可以保证系统中一个类只有一个对象,而且该对象易于外界访问,且共用此对象 如果希望在系统中某个类的对象只能存在一个,单例模式是最好的解决方案

7.主席类案例

实现步骤如下: 1、默认构造函数私有化 2、拷贝构造函数私有化 3、私有作用域下,类内声明静态成员指针,类外将指针初始化指向new出的主席对象 4、公共作用域下,提供获取主席指针的唯一接口 5、外界测试接口即可

8.打印机类案例

实现步骤如下: 1、默认构造函数私有化 2、拷贝构造函数私有化 3、私有作用域下,类内声明静态成员指针,类外将指针初始化指向new出的打印机对象 4、公共作用域下,提供获取打印机指针的唯一接口 5、外界测试接口即可 思考: 单例模式对象,是否需要管理释放? 解答: 单例模式由于被共享,释放时机不确定,通常无需管理释放,当程序执行结束会由系统管理释放 而且单例模式对象本身只有1个,不会占用大量内存空间。

http://www.dtcms.com/wzjs/570460.html

相关文章:

  • 企业专业网站建设如何看待响应式网页设计
  • 单页面营销型网站制作深圳购物网站
  • 深圳网站优化推广方案怎样设计网站首页
  • 开源 网站源代码排名优化百度
  • 手机网站建设价格表中国企业商标网
  • 网站正在建设中敬请大莲网站建设公司
  • 社区类网站建设在邯郸开互联网公司
  • 开封做网站哪家好有没有教如何做衣服的网站
  • 建设电影网站360网站兼容模式
  • ssl aws wordpress遂宁网站seo
  • 网站做支付宝支付接口洛克设计平台
  • 规划设计 网站 网站结构互联网后端开发
  • 网站 必须有的功能自己电脑做网站服务器违法吗
  • 深圳网页制作与网站建设公司住房建设部官方网站
  • 中外商贸网站建设平台推广方案经典范文
  • 微信长图的免费模板网站本地wordpress模板编辑器
  • 江门网站推广软件郑州做网站外包的公司有哪些
  • 常州网站建设方案维护黄石港区建设局网站
  • 山东省工程建设协会网站文娱热搜榜
  • 怎么描述网站主页做的好有没有专门做包装设计的网站
  • 国外响应式网站模板韩国风格网站模板下载
  • 阿里云大学 网站建设深圳市网站建设公司设计公司
  • 宁夏建设厅网站首页邳州网站
  • 怎样做建网站做淘客输入关键词搜索
  • 房地产项目网站建设国际网站推广专员招聘
  • a站是哪个app成都本地推广平台
  • 广东省建设厅官方网站多少钱wordpress锚文本
  • 陵水网站建设费用海外网络推广平台
  • 微分销手机网站制作山西 网站建设
  • 汽车租赁网站的设计与实现wordpress图片云储存