鱼C论坛

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

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

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

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

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

x
本帖最后由 (@_@) 于 2013-3-21 14:42 编辑 ! w  k- K) W; [5 x! |2 d: u" [) ~
! I, W7 Z0 j& B; N$ C; s. C
Unnamed QQ Screenshot20130321140150.gif
- e3 t$ @. b' u5 i3 l4 E( H#include <iostream>
3 p2 d) X2 W7 E( Y8 u- ]9 U; n7 P" N
using namespace std;$ _  X: j6 I1 ?( R

3 \& X/ {! q+ M1 _) Z/ Vclass CA
1 u: I& o& E) D! V{
% k+ C# \; h* Q! Q# C, xpublic:$ \; P# Z( ~3 ^, Q: ^, f
        explicit CA(int );//explicit只能显示强制转换,即:a=A(1000),不能隐式强制转换:a=1000;explicit可以防止出现问题: U% F: i+ z! o# D) H: n( `$ i( Z
        ~CA();/ M1 _6 H% B4 d, X5 T( _8 V
        void get();
0 w6 F# ]: {  z( Q0 o& \& r% o
" Q- C, a' |! e6 b1 ~7 ^) V& T8 _private:
9 p" x" V: b9 ]; O        int i;% b4 W9 V: n) S$ J3 D7 z# ^
};  F, o7 O6 x! a- U( M) s6 A7 c6 ]
5 ^) \2 _! D1 @/ W8 I1 P
CA::CA(int x)( \5 ]) ~: v$ r: F
{
, d8 L) f5 u. g1 y$ q  s+ E        i=x;* `6 G) K: F1 U& i8 e
        cout<<"构造函数在执行..."<<i<<endl;  t2 ?# T5 {& z! l1 k! T
}6 ?- Y# l* d1 R+ x% v+ W" }' s' [
void CA::get(): D4 B0 y( }- ^+ r$ H$ B: ]6 ~9 [5 l
{, r) I, |" k9 R5 p
        cout<<i<<endl;! a0 X  m0 w2 p  j3 I
}' a. b9 ?( y* ?3 S6 J+ Q

- _; x- i: p7 X5 ZCA::~CA()& M: `3 q+ ^8 K& I2 ^" f8 z
{
) ^% ]2 n7 ~& K% a- V. W        cout<<"析构函数在执行..."<<i<<endl;& _* W7 N) q4 U; ]- O
}
8 c$ Q" i1 R/ ~9 r4 C" @# d& |
& Y% E: v$ L* D0 M6 v- q7 O8 bint main(void)* y/ k* T- r# _' a0 q1 B
{: `5 \8 |4 `# L* {
        CA a(99);4 C+ I  A5 @' ]# |& p2 t
        a.get();. ]' z3 x) M- e# o% R
        a=CA(1000);
  o- O1 f" r: j/ P* @
7 {6 F. S4 u2 t1 v5 O        return 0;
# c' @: U! R$ F- q}
  i" N. x9 v+ q! N# c; `* `# V. m6 i
小甲鱼最新课程 -> https://ilovefishc.com

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

GMT+8, 2026-3-12 17:41

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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