C++中的动态内存管理是通过new和delete两个操作符来完成的。new操作符,为对象分配内存并调用对象所属类的构造函数,返回一个指向该对象的指针。delete调用时,销毁对象,并释放对象所在的内存。但在程序中使用new和delete容易导致很多问题,这里列出三个比较容易犯的错误。我们new了一个...
分类:
编程语言 时间:
2015-04-10 13:35:02
阅读次数:
140
在面向对象编程中, 最通常的方法是一个new操作符产生一个对象实例,new操作符就是用来构造对象实例的。但是在一些情况下, new操作符直接生成对象会带来一些问题。举例来说, 许多类型对象的创造需要一系列的步骤: 你可能需要计算或取得对象的初始设置; 选择生成哪个子对象实例; 或在生成你需要的...
分类:
其他好文 时间:
2015-04-07 23:11:46
阅读次数:
250
每个函数都有一个prototype属性,这个属性是指向一个对象的引用,这个对象称为原型对象,原型对象包含函数实例共享的方法和属性,也就是说将函数用作构造函数调用(使用new操作符调用)的时候,新创建的对象会从原型对象上继承属性和方法。当定义一个函数后通过 “.”为其添加的属性和函数,通过对象本身仍然...
分类:
编程语言 时间:
2015-04-07 17:09:20
阅读次数:
139
Date类型使用自UTC(国际协调时间)1970年1月1日午夜(0时)开始经过的毫秒数来保存日期。要创建一个日期对象,使用new操作符和Date构造函数即可: var?now?=?new?Date(); 在调用Date构造函数而不传递参数...
分类:
编程语言 时间:
2015-04-06 21:56:45
阅读次数:
229
楼主比较喜欢看一些很短但很有意思的题目,无意间又瞥到了一题,大家不妨可以一试。(原题链接猛戳这里)function Fn1() { this.name = 'peter'; return { name: 'jack' };}function Fn2() { this.name = ...
分类:
其他好文 时间:
2015-04-05 14:29:40
阅读次数:
127
终结操作表面上视乎很简单:创建一个对象,当它被回收时,它的Finalize方法会得到调用。但是一旦深研究下去,就会发现终结操作原非这么简单。应用程序创建一个新对象时,new操作符会从堆中分配内存。如果对象的类型定义了Finalize方法,那么在该类型的实例构造函数调用之前,会将指向该对象的一个指针放...
分类:
其他好文 时间:
2015-04-05 10:31:39
阅读次数:
200
单例模式(职责模式):简单的说,一个对象(在学习设计模式之前,需要比较了解面向对象思想)只负责一个特定的任务;单例类:1、构造函数需要标记为private(访问控制:防止外部代码使用new操作符创建对象),单例类不能在其他类中实例化, 只能被其自身实例化;2、拥有一个保存类的实例的静态成员变量3、拥...
分类:
Web程序 时间:
2015-04-02 23:53:06
阅读次数:
174
垃圾回收器检查托管堆中是否有应用程序不再使用的对象,如果有,他们使用的内存就可以回收(如果一次垃圾回收之后堆中仍然没有可用的内存,new操作符就会抛出一个OutOfMemoryException)。垃圾回收器如何知道应用程序正在使用一个对象呢?这个说起来比较复杂。每个应用程序都包含一组根。每个根都是...
分类:
编程语言 时间:
2015-03-30 22:55:38
阅读次数:
200
1. 引用类型1.1 Object类型创建Object类型有两种方式:使用new操作符后跟Object构造函数var person =new Object();字符量表示法var person = { name:’chuck’}1.2 Array类型1.2.1 创建方式使用Array构造函数var ...
分类:
编程语言 时间:
2015-03-29 18:01:55
阅读次数:
278
单例模式(职责模式):简单的说,一个对象(在学习设计模式之前,需要比较了解面向对象思想)只负责一个特定的任务;单例类:1、构造函数需要标记为private(访问控制:防止外部代码使用new操作符创建对象),单例类不能在其他类中实例化,只能被其自身实例化;2、拥有一个保存类的实例的静态成员变量3、拥有...
分类:
其他好文 时间:
2015-03-28 21:44:30
阅读次数:
184