偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

EasyC++,默認構造函數(shù)

開發(fā) 后端
C++當中有一個很奇怪的設定,當一個類我們沒有提供任何構造函數(shù)時,C++會默認賦予它一個默認構造函數(shù)。但當我們一旦實現(xiàn)了構造函數(shù)之后,C++則不會進行如此操作。

[[439804]]

大家好,我是梁唐。

默認構造函數(shù)

上一篇文章當中介紹的是顯式構造函數(shù),也就是說我們需要傳入值來對類的成員變量進行初始化。

但也有一些情況,我們可能并不需要傳入值進行初始化,或者有一些其他的邏輯。針對這種情況,C++提供了默認構造函數(shù)的功能。所謂默認構造函數(shù),也就是在沒有提供顯式的初始值時,用來創(chuàng)建對象的構造函數(shù)。

默認構造函數(shù)非常簡單,還是以之前的Stock類為例:

  1. Stock::Stock() { 
  2.  
  3. ... 
  4.  

如果默認構造函數(shù)里沒有任何邏輯,我們也可以把它寫在類聲明里:

  1. class Stock { 
  2.  
  3. ... 
  4.  
  5. Stock() {} 
  6.  
  7. }; 
  8.  
  9. #endif 

C++當中有一個很奇怪的設定,當一個類我們沒有提供任何構造函數(shù)時,C++會默認賦予它一個默認構造函數(shù)。但當我們一旦實現(xiàn)了構造函數(shù)之后,C++則不會進行如此操作。意味著對于定義了構造函數(shù)的類來說,想要使用默認構造函數(shù),必須由程序員手動定義。

有了默認構造函數(shù)之后,我們才可以直接聲明類的實例:

  1. Stock stock1; 

如果Stock類沒有默認構造函數(shù),那么上述的語句會報錯。

實現(xiàn)默認構造函數(shù),除了上述那樣手動創(chuàng)建一個沒有任何參數(shù)的構造函數(shù)之外,還可以將已有的構造函數(shù)的所有參數(shù)都設置默認值。

  1. Stock(const string &co = "Error"int n = 0, double pr = 0.0); 

 

由于只能有一個默認構造函數(shù),所以不要同時采用這兩種方式。

 

責任編輯:武曉燕 來源: Coder梁
相關推薦

2021-12-09 10:56:50

函數(shù)C++原型

2021-12-12 18:13:54

C++This指針

2021-11-10 10:48:36

C++函數(shù)指針

2021-12-11 19:02:03

函數(shù)C++對象

2021-11-26 00:03:20

C++編譯常量

2021-12-29 20:31:40

C++多態(tài)指針

2021-12-08 10:43:09

C++實現(xiàn)

2021-10-26 00:19:51

C++結構體存儲

2021-12-30 14:58:58

C++函數(shù)動態(tài)

2021-11-30 11:04:36

C++函數(shù)語言

2021-11-09 10:38:16

C++Const指針

2021-11-27 11:50:09

C++靜態(tài)持續(xù)

2021-11-26 10:56:28

C++存儲持續(xù)性

2021-12-16 10:40:11

C++運算符重載

2021-10-31 20:24:24

C++for循環(huán)

2021-10-21 18:52:00

C++數(shù)組存儲

2021-12-26 00:08:35

C++初始化列表

2021-12-14 10:12:58

C++抽象數(shù)據

2021-12-15 10:25:57

C++運算符重載

2021-10-26 15:36:17

C++枚舉值類型
點贊
收藏

51CTO技術棧公眾號