码迷,mamicode.com
首页 > 其他好文 > 详细

构造函数和一般函数异同

时间:2018-02-05 14:28:14      阅读:145      评论:0      收藏:0      [点我收藏+]

标签:不同   创建   完成   其他   通过   color   roman   初始化   bsp   

1、它们的执行时间不同:

  构造函数是在创建对象的过程中执行。当对象创建完成了,构造函数就已经执行结束。

  一般函数执行时间有两种情况:1) 如果调用其他类中的函数时:一般函数通过是在对象创建完成之后,通过对象的引用来调用。

                2) 如果调用本类中的函数时:什么时候使用,什么时候调用。

2、它们的调用次数不同:

  构造函数只有在new对象的时候,会被调用,一旦对象创建完成,我们不能手动的人为去调用构造函数。

  一般函数可以通过对象随意的调用,没有次数限制。

 3、它们互相调用问题:

  在构造函数中可以去调用一般的函数,但是在一般的函数中不能调用构造函数。

 

在创建对象的过程中构造函数的执行时机:

  1、通过new 关键字创建对象,首先会在堆中分配对象的内存空间

  2、给对象所属的类中的所有成员变量进行默认的初始化动作。

  3、开始调用和new对象时传递的参数一致的构造函数。

  4、调用了构造函数之后,开始执行构造函数中的所有代码。(注:哪个对象调用,就把传递到构造函数里的值赋值给堆内存中的变量中)

  5、当把构造函数中的所有代码全部执行完成,这时构造函数出栈,才表示当前这个对象创建完成。

  6、把对象的内存地址赋值给对应的引用变量。

构造函数和一般函数异同

标签:不同   创建   完成   其他   通过   color   roman   初始化   bsp   

原文地址:https://www.cnblogs.com/JiangNian/p/8416995.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!