码迷,mamicode.com
首页 > 编程语言 > 详细

C++ 构造函数执行原理

时间:2014-05-25 01:03:11      阅读:332      评论:0      收藏:0      [点我收藏+]

标签:style   class   blog   c   code   tar   

作者 : 卿笃军


构造函数 ,是一种特殊的方法 。主要用来在创建对象时初始化对象, 即为对象成员变量赋初始值,总与new运算符一起使用在创建对象的语句中 。特别的一个类可以有多个构造函数 ,可根据其参数个数的不同或参数类型的不同来区分它们 即构造函数的重载。(这句话来自百度百科)


由上面这句话,我们知道:构造函数,是用来给对象开辟空间并初始化对象的~~~~~

那么,构造函数具体是如何执行的呢?下面附上一张图,图解构造函数执行过程:

bubuko.com,布布扣

第一步:构造函数接收到主函数传进来的参数,图中①。


第二步:根据private: 里面成员变量的定义顺序,给对象开辟空间,图中②。


第三步:进行" : "号后面的初始化工作,其中初始化顺序为:private:成员变量定义顺序,即先m_a,再m_b,图中③。

                 (和" : "后面的顺序无关。这里可以想象成去医院看病,只和你预约的先后有关,和你排队的顺序无关,先预约的先看病)。


第四步: 执行{ } 里面的cout<<语句,图中④。

#include <iostream>
using namespace std;

class GZHS
{
public:
	GZHS(int a = 0, int b = 0) : m_b(b), m_a(a)
	{
		cout<<m_a<<","<<m_b<<endl;
	}
private:
	int m_a;
	int m_b;
};

int main()
{
	GZHS Test(5,22);

	return 0;
}

参考文献:百度百科,构造函数,http://baike.baidu.com/view/411124.htm,2014年5月22日

熊思的CSDN博客,C++的构造函数,http://blog.csdn.net/u010056396/article/details/26623069,2014年5月22日


C++ 构造函数执行原理,布布扣,bubuko.com

C++ 构造函数执行原理

标签:style   class   blog   c   code   tar   

原文地址:http://blog.csdn.net/qingdujun/article/details/26626605

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