xingkongyun
星空隕的程序小站
C++博客
首頁
新隨筆
聯(lián)系
聚合
管理
隨筆 - 8 文章 - 26 trackbacks - 0
<
2025年7月
>
日
一
二
三
四
五
六
29
30
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
1
2
3
4
5
6
7
8
9
常用鏈接
我的隨筆
我的評論
我參與的隨筆
留言簿
(5)
給我留言
查看公開留言
查看私人留言
隨筆檔案
2009年12月 (1)
2009年9月 (1)
2009年4月 (1)
2008年12月 (1)
2008年11月 (1)
2008年10月 (2)
2008年9月 (1)
文章分類
C++語言(6)
Directx(1)
STL(2)
VC++
Windows編程(4)
操作系統(tǒng)(4)
數(shù)據(jù)結(jié)構(gòu)(10)
文章檔案
2008年11月 (1)
2008年10月 (3)
2008年9月 (10)
2008年7月 (1)
2008年6月 (13)
相冊
圖示
C++語言
C++的羅浮宮
搜索
最新評論
1.?re: 卸載遠程線程中的DLL
水平很高,學習了。
--王小亮
2.?re: 卸載遠程線程中的DLL
評論內(nèi)容較長,點擊標題查看
--疑問
3.?re: NASM 與 VC 混合編程的小結(jié)
收下了
--5545645
4.?re: VC++內(nèi)聯(lián)匯編(MSDN相關內(nèi)容完整翻譯)
謝謝
--5545645
5.?re: 安全密碼框的設計
評論內(nèi)容較長,點擊標題查看
--徐胖子
閱讀排行榜
1.?VC++內(nèi)聯(lián)匯編(MSDN相關內(nèi)容完整翻譯)(9291)
2.?保護模式與實模式的切換(8050)
3.?安全密碼框的設計(4994)
4.?NASM 與 VC 混合編程的小結(jié)(3937)
5.?SYSENTER指令相關(大段的轉(zhuǎn)載-_-)(3652)
評論排行榜
1.?通過虛函數(shù)表訪問私有虛函數(shù)(10)
2.?安全密碼框的設計(8)
3.?保護模式與實模式的切換(4)
4.?VC++內(nèi)聯(lián)匯編(MSDN相關內(nèi)容完整翻譯)(1)
5.?NASM 與 VC 混合編程的小結(jié)(1)
C++關鍵字之explicit
一個explicit關鍵字聲明的構(gòu)造函數(shù)禁止編譯器進行隱式類型轉(zhuǎn)換 .(
禁止單參數(shù)構(gòu)造函數(shù)"被用于自動型別轉(zhuǎn)換
)
參考如下代碼:
1
#include
<
stdio.h
>
2
#include
<
iostream
>
3
4
using namespace std;
5
6
7
8
9
class
C
10
{
11
public
:
12
int
i;
13
C(
const
C
&
)
//
an copy constructor
14
{
15
printf(
"
\nin the copy constructor
"
);
16
}
17
explicit C(
int
i )
//
an explicit constructor
18
{
19
printf(
"
\nin the constructor
"
);
20
}
21
22
operator
int
()
const
//
classs ->int
23
{
24
printf(
"
\noperator int()
"
);
25
return
i;
26
}
27
28
C()
29
{
30
i
=
0
;
31
}
32
}
;
33
34
void
test_fun1(C obj);
35
void
test_fun2(
int
i);
36
void
test_fun3(C c);
37
38
39
int
main()
40
{
41
C c, d;
42
test_fun3(c);
//
c is copied
43
44
//
test_fun1(1);
//
錯誤,因為構(gòu)造函數(shù)聲明了explicit,所以禁止隱式轉(zhuǎn)換
45
46
test_fun2(c);
//
call operator int()const
47
test_fun1(c);
48
cin.get();
49
return
0
;
50
}
51
52
void
test_fun1(C obj)
53
{
54
}
55
56
void
test_fun2(
int
i)
57
{
58
}
59
60
void
test_fun3(C c)
61
{
62
}
從網(wǎng)上看到這段代碼:
1
#include
<
string
>
2
#include
<
iostream
>
3
4
using namespace std;
5
6
class
Number
{
7
public
:
8
string type;
9
10
Number(): type(
"
void
"
)
{ }
11
explicit Number(
short
) : type(
"
short
"
)
{ }
12
Number(
int
) : type(
"
int
"
)
{ }
13
}
;
14
void
Show(
const
Number
&
n)
{ cout
<<
n.type; }
15
void
f()
16
{
17
short
s
=
42
;
18
Show(s);
19
}
20
int
main()
21
{
22
f();
23
cin.get();
24
return
0
;
25
}
26
這段代碼的返回值為:int,這里面起關鍵作用的就是那個explicit
posted on 2008-06-25 21:36
楊彬彬
閱讀(210)
評論(0)
編輯
收藏
引用
所屬分類:
C++語言
只有注冊用戶
登錄
后才能發(fā)表評論。
【推薦】100%開源!大型工業(yè)跨平臺軟件C++源碼提供,建模,組態(tài)!
相關文章:
C++關鍵字之const
C++關鍵字之explicit
C++關鍵字typename(轉(zhuǎn)載)
GetBuffer與ReleaseBuffer的用法,CString剖析---轉(zhuǎn)載
C++ 枚舉類型的思考
指針, 指針的指針, 數(shù)組, 指針數(shù)組, 數(shù)組指針, 指針函數(shù), 函數(shù)指針
網(wǎng)站導航:
博客園
IT新聞
BlogJava
博問
Chat2DB
管理
Copyright ©2025 楊彬彬 Powered by:
博客園
模板提供:
滬江博客
午夜精品久久久久久久
|
色综合久久久久久久久五月
|
亚洲综合久久综合激情久久
|
久久这里都是精品
|
久久久久久久97
|
热久久这里只有精品
|
亚洲国产天堂久久综合
|
国内精品久久久久久99蜜桃
|
亚洲综合伊人久久大杳蕉
|
成人国内精品久久久久影院
|
国产三级观看久久
|
久久精品国产亚洲AV无码偷窥
|
理论片午午伦夜理片久久
|
久久久亚洲欧洲日产国码aⅴ
|
精品无码久久久久久午夜
|
久久夜色精品国产亚洲av
|
久久w5ww成w人免费
|
久久精品成人欧美大片
|
色悠久久久久久久综合网
|
精品久久久久久亚洲精品
|
久久这里都是精品
|
久久天天日天天操综合伊人av
|
日本免费一区二区久久人人澡
|
亚洲精品白浆高清久久久久久
|
久久亚洲国产精品五月天婷
|
精品久久久久久中文字幕
|
久久综合狠狠综合久久综合88
|
国产一区二区久久久
|
精品久久久久久无码人妻蜜桃
|
狠狠色婷婷综合天天久久丁香
|
久久人人爽人人爽人人AV
|
久久精品亚洲AV久久久无码
|
精品久久久久久国产免费了
|
久久99精品久久久久久野外
|
日韩精品国产自在久久现线拍
|
亚洲国产精品久久久天堂
|
亚洲国产视频久久
|
欧美激情一区二区久久久
|
久久久国产99久久国产一
|
久久这里只有精品首页
|
国内精品伊人久久久影院
|