鱼C论坛

 找回密码
 立即注册
查看: 2258|回复: 0

[C++个人笔记] 62.调用构造函数进行类型转换

[复制链接]
发表于 2013-3-21 14:04:09 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
本帖最后由 (@_@) 于 2013-3-21 14:42 编辑 , v' G$ X: l1 D/ ^8 I* r' A
* e) B7 {. M+ x& G5 p- _) d8 n
Unnamed QQ Screenshot20130321140150.gif 0 M6 z# i3 m* ~: c) i1 A
#include <iostream>, J3 X  d! D! {" o# {7 r
# F+ W$ \  ]; \9 @' J# C
using namespace std;3 e4 x4 m4 I) O; F

( J% b+ O3 K7 V  p6 Nclass CA9 ]. z; o& w' ^$ F; @# n' X1 r
{
6 \/ O5 T2 S6 I) |! wpublic:2 `3 \1 w  y0 u9 {
        explicit CA(int );//explicit只能显示强制转换,即:a=A(1000),不能隐式强制转换:a=1000;explicit可以防止出现问题
# m0 ^' ]! S8 _( n4 K) Q        ~CA();. q- j, B1 {/ P* s
        void get();
, d/ n9 k2 u" s4 ^1 H. h8 u: g% E+ q+ ]" }( {$ p! x2 H5 o" F
private:
5 l9 n+ [. V" e1 c( S        int i;, G/ M2 C5 \( k5 q
};6 v+ z4 W/ Y8 e

! }3 r, }/ O1 p  P$ NCA::CA(int x)
1 ]+ V- I7 r- G{$ e1 Q. w( W& f5 O! A0 G
        i=x;
1 O8 e2 K4 _# h. J        cout<<"构造函数在执行..."<<i<<endl;! u1 O; _. R9 d; D6 {  _6 O
}
4 g4 z+ l0 n4 N! e( n* lvoid CA::get()
1 h+ U  R( v( c8 c( D3 p, j& H, A{
9 u- a  k; H, i        cout<<i<<endl;# J% m7 O3 r- ?* v# [+ A
}, L- x# Q# j. c

9 K& w; `0 {  V5 c0 x! QCA::~CA()4 Z0 r0 W$ a3 m. M& V
{
( G1 l! |. o% @        cout<<"析构函数在执行..."<<i<<endl;
' m. G" B8 W' u' _}( T1 _1 k6 b1 Q) B9 a
3 x' P  c- [* b& P2 C
int main(void). [1 U# p3 R" p4 T2 H/ t
{# Y: ^7 T3 ]/ v7 G. M; ]* s6 C, M8 b3 h
        CA a(99);2 h* c/ W' ^6 s$ U8 _4 M
        a.get();
3 Q, F" w0 y  ?5 j+ R        a=CA(1000);
3 P, w' c, F0 Z8 F* u& O4 b  o6 N
' X" D( {* k- p% C" Y4 z* w        return 0;
! c& s$ F5 x5 r. |7 B0 J}" `+ k& X* J7 S% G4 j# z! I
! k: c! }2 m0 m* ^5 o
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-12-28 19:53

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表