自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

C++ explicit關(guān)鍵字基本內(nèi)容概述

開(kāi)發(fā) 后端
C++ explicit關(guān)鍵字的作用主要就是用來(lái)修飾類(lèi)的構(gòu)造函數(shù),用來(lái)表明這一構(gòu)造函數(shù)是顯式的。我們將會(huì)在這里為大家詳細(xì)介紹相關(guān)內(nèi)容。

C++編程語(yǔ)言中,各種關(guān)鍵字的應(yīng)用在實(shí)際編程中是非常重要的一個(gè)基礎(chǔ)操作。對(duì)于初學(xué)者來(lái)說(shuō),我們需要在學(xué)習(xí)和實(shí)踐中對(duì)這一基礎(chǔ)應(yīng)用技巧進(jìn)行充分的掌握。C++ explicit關(guān)鍵字用來(lái)修飾類(lèi)的構(gòu)造函數(shù),表明該構(gòu)造函數(shù)是顯式的,既然有"顯式"那么必然就有"隱式",那么什么是顯示而什么又是隱式的呢?

如果C++類(lèi)的構(gòu)造函數(shù)有一個(gè)參數(shù),那么在編譯的時(shí)候就會(huì)有一個(gè)缺省的轉(zhuǎn)換操作:將該構(gòu)造函數(shù)對(duì)應(yīng)數(shù)據(jù)類(lèi)型的數(shù)據(jù)轉(zhuǎn)換為該類(lèi)對(duì)象,如下面所示:

  1. class MyClass  
  2. {  
  3. public:  
  4. MyClass( int num );  
  5. }  
  6. ....  
  7. MyClass obj = 10; //ok,convert int to MyClass 

在上面的代碼中編譯器自動(dòng)將整型轉(zhuǎn)換為MyClass類(lèi)對(duì)象,實(shí)際上等同于下面的操作:

  1. MyClass temp(10);  
  2. MyClass obj = temp

上面的所有的操作即是所謂的"隱式轉(zhuǎn)換"。

如果要避免這種自動(dòng)轉(zhuǎn)換的功能,我們?cè)撛趺醋瞿??嘿嘿這就是C++ explicit關(guān)鍵字的作用了,將類(lèi)的構(gòu)造函數(shù)聲明為"顯示",也就是在聲明構(gòu)造函數(shù)的時(shí)候前面添加上explicit即可,這樣就可以防止這種自動(dòng)的轉(zhuǎn)換操作,如果我們修改上面的MyClass類(lèi)的構(gòu)造函數(shù)為顯示的,那么下面的代碼就不能夠編譯通過(guò)了,如下所示:

  1. class MyClass  
  2. {  
  3. public:  
  4. explicit MyClass( int num );  
  5. }  
  6. ....  
  7. MyClass obj = 10; //err,can't non-explict convert 

C++ explicit關(guān)鍵字的基本內(nèi)容就為大家介紹到這里。

【編輯推薦】

  1. C++成員函數(shù)指針詳細(xì)使用指南
  2. C++訪問(wèn)控制符內(nèi)容相關(guān)介紹
  3. C++ typeof基本應(yīng)用方式解析
  4. C++ Cstring應(yīng)用方法概述
  5. C++ static關(guān)鍵字詳細(xì)應(yīng)用指南
責(zé)任編輯:曹凱 來(lái)源: 博客園
相關(guān)推薦

2010-02-06 13:58:13

C++ Bost庫(kù)

2010-02-05 15:51:06

C++ explici

2010-03-05 15:56:02

Python流程控制關(guān)

2010-02-05 13:35:19

C++虛析構(gòu)函數(shù)

2010-02-01 13:19:09

C++ explici

2010-02-05 10:08:55

C++名字空間

2025-01-07 07:20:00

C++代碼開(kāi)發(fā)

2010-02-04 15:51:07

C++迭代器

2010-01-28 15:33:37

Android程序架構(gòu)

2010-03-02 15:53:02

WCF服務(wù)合同

2010-01-26 14:35:11

C++關(guān)鍵字

2010-03-02 17:55:37

WCF終結(jié)點(diǎn)地址

2010-02-03 15:06:02

C++可變參數(shù)表

2009-09-17 09:30:00

Linq LET關(guān)鍵字

2011-07-14 23:14:42

C++static

2010-02-25 17:04:54

WCF實(shí)例上下文

2023-11-19 22:52:42

2011-04-11 15:06:22

C++關(guān)鍵字

2010-02-01 14:46:53

C++關(guān)鍵字

2010-02-02 14:27:54

C++ static關(guān)
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)