鱼C论坛

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

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

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

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

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

x
本帖最后由 (@_@) 于 2013-3-21 14:42 编辑
4 h, F  e* }. G3 Y
5 }$ |( s2 h& _/ A0 l. T Unnamed QQ Screenshot20130321140150.gif & V) G! ^+ w8 b! m; _  d8 [+ v: n
#include <iostream>
6 m! `, n" m  }4 i( e. ~2 B& Z
" ]5 v8 `/ Q: s9 L/ Lusing namespace std;! F, x% H0 [3 L; d
- k4 B) Z+ M4 _# q
class CA) W/ T( A) t9 e" b+ y& d
{
1 w7 U6 P0 }( Npublic:; I- @& q% l  l, c- a% k/ _
        explicit CA(int );//explicit只能显示强制转换,即:a=A(1000),不能隐式强制转换:a=1000;explicit可以防止出现问题
  \0 K/ g7 g4 ]! Q+ N) |        ~CA();7 r/ m/ ]( A" k$ V7 W6 W4 o; H7 M
        void get();! a% p0 R) ~5 |) K/ k- h3 U2 y

! d9 m1 P" U; t5 }1 \private:
+ a+ s" x$ a0 ^- M; s        int i;& E# U# C4 c4 {; a
};1 }5 q6 @+ z& k+ n. i( C
# S+ {3 d1 V# J7 x8 q
CA::CA(int x)
% @: @9 w$ Z( u6 q7 w) |{' E% h$ F+ W# U- S7 {6 q3 w
        i=x;
7 o* P" o6 M' V9 S' n        cout<<"构造函数在执行..."<<i<<endl;
! J/ p) |6 {0 x8 i: f0 l0 U$ Q}) n1 H+ K% P6 ^6 K/ {9 T
void CA::get()
! |3 j. U. o* X- V- Y7 j7 n6 m" A{
+ p. ~  o' }4 p# i/ \        cout<<i<<endl;4 Z5 ^4 L8 g4 w' w
}: g5 {0 [0 r! ?. ]9 m0 h

7 x4 `5 a& r9 Q9 R* T2 g7 Q2 cCA::~CA()
# F6 T1 f2 Z: p% Y; Z{9 j% D4 G8 A# O$ `! X  X
        cout<<"析构函数在执行..."<<i<<endl;- }) u* Y# z# S( j) E* a
}
0 U! b  B# v, g/ E8 ~
% p3 l/ Z* H- c' }7 tint main(void)
% U! s: r! a% L- A; ~$ w{
+ |5 ]& A! h8 I) S$ _        CA a(99);
5 P# ~8 u* H3 a        a.get();8 K; J! q0 ]( _/ I) w2 D; n& D
        a=CA(1000);
& }8 B  |4 q. y( U  L0 U9 E' q
8 |8 s$ v/ M: B! h        return 0;7 A8 a, n4 E; _/ K
}
! m9 k0 h' m- l& y" Z* e4 Z
. `  n. k1 h0 g
小甲鱼最新课程 -> https://ilovefishc.com

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

GMT+8, 2025-11-11 10:05

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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