鱼C论坛

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

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

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

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

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

x
本帖最后由 (@_@) 于 2013-3-21 14:42 编辑 - E, h1 s; f; A: w5 H5 M

( X. q. ]/ h8 F4 ~/ v0 u Unnamed QQ Screenshot20130321140150.gif 9 ?9 b( _5 @) y  S
#include <iostream>4 |- B  D- ]" ^$ k* [5 E: G
4 Y9 t6 g; s6 `, h( U) s
using namespace std;
; X$ A2 R( Q" c' z% @+ H
, J( P, X( g" oclass CA% J' m" N/ W8 {3 b  |
{
2 x  H$ ?& ?( }4 \5 f# b* P4 gpublic:
0 @* j% C3 j: y: J/ g- e1 s- r        explicit CA(int );//explicit只能显示强制转换,即:a=A(1000),不能隐式强制转换:a=1000;explicit可以防止出现问题
5 G2 v+ Z8 u3 {1 T# _" ^        ~CA();
: d5 M" M( H( k/ `  W        void get();+ `: j) f/ w' \5 T
/ J+ ^, G9 G( Q$ b( v9 W
private:
3 @0 N, T" O/ V; ?% a' ^5 I9 i        int i;
7 D* ]3 H# F) H$ `; }};2 W. b% Y4 y+ P3 E4 `/ f. L
6 D  X- k2 F* V9 Q8 g
CA::CA(int x)
) a/ I7 z. |, t& S- D# T- G{6 ?' k0 ~' h- G
        i=x;
2 [; z& m2 l- u8 o3 U        cout<<"构造函数在执行..."<<i<<endl;
# N% e1 S" P. ~}/ S3 S- v, X! R! ~/ d3 s
void CA::get(); U7 V3 A7 [' V5 q" V8 z
{! C2 ~$ C3 ]; s5 q5 a$ w2 p$ q
        cout<<i<<endl;/ \) \, d, r0 H/ H# ?# l6 D
}, w! R" @4 N+ E9 }3 G+ @
8 f( N, C- O1 t" w! m" |' v& j
CA::~CA(), I2 q' v4 M* h* K7 L, u% v
{
( w8 ]& L4 P& z9 ]        cout<<"析构函数在执行..."<<i<<endl;
+ j1 |' t5 O; x7 U}
5 R! r/ R- m  _+ {, p9 k9 \9 j. ], M4 Q: _
int main(void)* V+ ^( q! U  C; K
{" h' M8 M( i: b- Z; y
        CA a(99);! b5 X( {9 a  _! p! @1 y& ]6 ^
        a.get();
/ Q, l2 @9 |" x        a=CA(1000);& ]; j: v8 E& t; ]

4 b3 y& b$ o- ]; Y; o        return 0;2 q) G7 w! J2 n+ [: a# L
}
" M; c7 B; |9 {6 g% O! b8 v# w$ C; p( R( ^5 e  b: a
小甲鱼最新课程 -> https://ilovefishc.com

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

GMT+8, 2026-9-19 01:44

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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