歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux編程 >> Linux編程 >> C++ 構造函數與析構函數

C++ 構造函數與析構函數

日期:2017/3/1 10:13:49   编辑:Linux編程

簡單介紹下C++ 構造函數。

首先構造函數是一種特殊的類成員函數,在創建對象的時候被調用了,調用完構造函數之後,一個對象建立了。構造函數與類名相同。只有沒有定義任何構造函數的時候,編譯器才會提供默認的構造函數,如果定義了任意一個構造函數,那麼程序員必須保證為它提供默認構造函數。

接下來是幾種調用構造函數的方式

  1. 1.Class class1(1,"a");
  2. 2.Class class2 = Class(2,"b");
  3. 3.class2 = class1;
  4. 4.class1 = Class(3,"c")

其中,解釋下#3和#4,其中#3是將class1裡的成員復制給class2。#4是首先調用構造函數生成了一個臨時對象,再把這個對象的成員復制給了class1。而那個臨時對象就被釋放了。

接下來說說析構函數,就是在構造函數加了一個"~"符號。如果創建的是一個靜態存儲類對象,那麼其析構函數將會在程序結束時調用。如果是自動存儲類對象,那麼會在執行完代碼塊後自動調用,如果是new創建的,那麼會駐留在內存中,直到delete來釋放內存,才會調用。

這周事情較多,周日在外面找找英語培訓班,結果一問全是要幾萬的。。哎,還是抽空自學英語了。。。下周我網絡開始看網絡層了,C++進入類的使用。好了,繼續加油。

Copyright © Linux教程網 All Rights Reserved