鱼C论坛

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

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

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

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

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

x
本帖最后由 (@_@) 于 2013-3-21 14:42 编辑 / r+ t8 @# Z% _4 s9 _. J9 d

+ C  y5 H7 J0 H- [ Unnamed QQ Screenshot20130321140150.gif ) `* K1 j% O: G$ u- j- x* l# m
#include <iostream>
: p( _# V- z0 k1 H+ U8 i& K8 M- }, D/ r0 F* G- B; ~
using namespace std;
0 L) K# O' R5 x& @- }, I
1 q+ l  p2 J/ N. H( G# m% _class CA
% U9 V3 ^/ O' r2 K* O{+ ^. G5 y: y$ }5 F  h, ^
public:0 ~. Y6 u3 G, e) B7 l6 g1 E
        explicit CA(int );//explicit只能显示强制转换,即:a=A(1000),不能隐式强制转换:a=1000;explicit可以防止出现问题
; r' p8 a+ l( l/ m1 k        ~CA();) D; ?) F' }( K0 v
        void get();$ I) J4 V8 k: l% v0 N+ M5 _. i6 F3 L
7 I/ [0 w, [( a& |
private:
+ \4 i+ [. [; A. o( X        int i;
, n2 A5 Z3 Q  m& w# z+ E};  R& p, A+ @8 Y

' g% g; e2 {0 C/ L( I; cCA::CA(int x)
* r8 b; T1 n# U& I& q" }9 s" l0 y{
+ z% q/ P9 e1 O9 O9 j        i=x;
& E) {+ _% v2 C0 k" I        cout<<"构造函数在执行..."<<i<<endl;
7 }0 R, ]& m* ^  ^}( B- o  Q) j: Y
void CA::get()2 q% E. j3 ]6 |' h( B1 L: t4 Q
{! W, I# z) w* e
        cout<<i<<endl;1 q5 z: H1 J2 m& N  m' A
}
$ m' Y2 F* T! G' E
8 o& ^9 N# T( a5 j* d+ i) TCA::~CA()2 I: V+ I8 S/ u3 ]9 @( T8 @
{$ k2 g  i$ n, j9 `3 x
        cout<<"析构函数在执行..."<<i<<endl;/ ^7 J$ m, h# q  e) ?! y* b
}! T' ~. b. f# S. L9 F
1 `. A. d/ s" V& |/ c
int main(void), p# |4 ^. c! z- R& o7 R
{. d7 l1 P& X0 Q" U6 Z
        CA a(99);7 [8 O5 D' K1 w5 _# D
        a.get();7 s. Q1 a4 ^+ g# `. |5 p
        a=CA(1000);
; I/ I+ p: w' B/ z3 i
- P  g6 n, K5 A2 [8 H0 R) l* X( P        return 0;- A# a- L6 ?  l7 ~3 F
}
- K6 z# S7 e- Y( F+ q  N3 d9 P. r, e6 W9 Y: K, ]: b+ L# z6 Y
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com

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

GMT+8, 2025-4-5 22:56

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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