程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> C++ >> C++入門知識 >> C++ 構造函數執行原理

C++ 構造函數執行原理

編輯:C++入門知識

作者 : 卿笃軍


構造函數 ,是一種特殊的方法 。主要用來在創建對象時初始化對象, 即為對象成員變量賦初始值,總與new運算符一起使用在創建對象的語句中 。特別的一個類可以有多個構造函數 ,可根據其參數個數的不同或參數類型的不同來區分它們 即構造函數的重載。(這句話來自百度百科)


由上面這句話,我們知道:構造函數,是用來給對象開辟空間並初始化對象的~~~~~

那麼,構造函數具體是如何執行的呢?下面附上一張圖,圖解構造函數執行過程:

\

第一步:構造函數接收到主函數傳進來的參數,圖中①。


<喎?http://www.Bkjia.com/kf/ware/vc/" target="_blank" class="keylink">vcD4KPHA+tdq2/rK9o7q4+b7dcHJpdmF0ZTogwO/D5rPJ1LGx5MG/tcS2qNLly7PQ8qOsuPi21M/zv6qx2b/VvOSjrM281tCi2qGjPC9wPgo8cD48YnI+CjwvcD4KPHA+tdrI/bK9o7q9+NDQ" : "號後面的初始化工作,其中初始化順序為:private:成員變量定義順序,即先m_a,再m_b,圖中③。

(和" : "後面的順序無關。這裡可以想象成去醫院看病,只和你預約的先後有關,和你排隊的順序無關,先預約的先看病)。


第四步: 執行{ } 裡面的cout<<語句,圖中④。

#include 
using namespace std;

class GZHS
{
public:
	GZHS(int a = 0, int b = 0) : m_b(b), m_a(a)
	{
		cout<
參考文獻:百度百科,構造函數,http://baike.baidu.com/view/411124.htm,2014年5月22日

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


  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved