鱼C论坛

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

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

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

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

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

x
本帖最后由 (@_@) 于 2013-3-21 14:42 编辑 + D$ \1 ?' t, C3 v8 ~

$ s) I; |' l# ~+ M9 t: e Unnamed QQ Screenshot20130321140150.gif 5 |9 c* [+ ?; x) y) ~2 _
#include <iostream>0 J1 z" T2 ~. `1 b7 V, B
) {4 F2 X$ A3 d
using namespace std;
8 v9 l0 E! Q% L5 E" U0 S
! o/ x# V4 p- m/ O; H" g! Jclass CA6 g- d2 [! K: i9 ^% y; ?
{7 \  s8 Q% y: R0 `5 H& Z8 J
public:
/ f, F& I+ X8 I2 D1 c3 K& K3 e        explicit CA(int );//explicit只能显示强制转换,即:a=A(1000),不能隐式强制转换:a=1000;explicit可以防止出现问题
! |9 a3 P7 P6 k  C        ~CA();
# u  d6 u. G1 {4 }: K9 r+ L9 V1 S/ @        void get();
" {6 L# d3 P8 v* m  u2 C- U* n# Q4 R% }. [
private:( b1 b3 P7 {" b: f! h, C
        int i;9 P& x* \0 q. N6 J
};! G7 ~* J6 V6 y
( i' x# v0 a- A  W) h4 R
CA::CA(int x)
8 F- B" [% C% _$ @{
# y( e2 P! j: Q1 B* s        i=x;9 m  ~0 C- @- U" L
        cout<<"构造函数在执行..."<<i<<endl;$ v! c  L6 ^$ P9 M
}
7 v2 u  Y+ y+ {) E3 h/ O2 Z) Rvoid CA::get(), @) }2 v+ r% Q3 B
{
: ~: }9 Y/ I% u1 Y: n        cout<<i<<endl;
6 \6 j! Z; C. A( b}
! E& A+ g; }8 A9 V5 O, K8 `" ], j7 y: C
CA::~CA()
* u( O& x5 Z; u+ f+ w) h{! _+ P, E; Q! e+ i% U' J7 y& q# o
        cout<<"析构函数在执行..."<<i<<endl;
1 X3 D8 y* f. D; W1 v}
% t! i1 r# c% |* J. l; I  L/ ]5 {% L8 K5 i$ I; K5 H( L
int main(void)
) k* @# N( r2 c- Z! t+ X{
0 J# |# q! }/ S' i/ x8 T        CA a(99);: {! M. Z7 i4 K2 O# Q9 T
        a.get();, e' k' G1 g' h- C* n2 q
        a=CA(1000);  d  b: L/ C( ~2 O+ g
3 W4 D' j; @, ^6 D/ v; n
        return 0;* r. e. |3 E0 B, l. H1 O
}! W) c3 c/ I9 Z7 `  @; h

% K* ?& l: x' |; B3 y
小甲鱼最新课程 -> https://ilovefishc.com

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

GMT+8, 2026-3-27 19:39

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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