鱼C论坛

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

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

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

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

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

x
本帖最后由 (@_@) 于 2013-3-21 14:42 编辑
/ o# v, J% b- k. {
1 x$ _( C( E( ^. r5 u Unnamed QQ Screenshot20130321140150.gif
+ Q  d& J# E& G" C#include <iostream>& K" @% D; q& Y& a  ^5 A
8 O0 q1 {: M$ w# f" s0 W
using namespace std;
- K6 o5 r3 A6 k2 C  w( I+ z% m* o4 v+ U
class CA
( N. F4 j3 }5 s  J( D# z{7 x) H. o. X( L& Q, v8 R+ M
public:6 \- k& W* g. X) e8 |
        explicit CA(int );//explicit只能显示强制转换,即:a=A(1000),不能隐式强制转换:a=1000;explicit可以防止出现问题% U* m9 a) C' d8 c# v$ I* X
        ~CA();
- Z5 }+ @4 a1 G% k        void get();
: y$ O9 o- f& I- q- q
4 i& h' q5 u2 g0 ~& `private:! E+ ~6 c6 t5 O6 W# [# {
        int i;6 h" H, p4 g5 E* e7 H4 ?! V
};* K  W0 L0 I' A4 p" e
2 \) w; `, M4 s1 Z) L  C
CA::CA(int x)
4 F" Z2 ~" C' r{8 H: P- ^; P7 v9 A" V
        i=x;
, R  f3 }5 O9 f$ |3 f; w        cout<<"构造函数在执行..."<<i<<endl;6 u$ {, D% T& h& ?& A( O$ G! o
}
$ ]3 Y2 R6 ?: Ivoid CA::get()
' ^2 E. Y4 N+ I2 L, y5 W$ V{
7 l- N" X/ H, s1 @  o4 E6 w) G% J! i        cout<<i<<endl;/ o9 }( B+ ^! F( H
}
. H/ b/ F( b  N9 {8 i3 a- `$ S) K7 ]; P3 W+ N
CA::~CA()6 r* W) d" ^$ \: ^5 u# X
{
* r1 Z, \- n! j4 K/ \) v3 F& h        cout<<"析构函数在执行..."<<i<<endl;; y; `& Q0 Q& g+ Z
}2 ^" Q3 L5 t3 ~
$ p! M0 c& W/ w" s* Y. U
int main(void)% L4 ^' T% t' H% R7 D2 U
{3 S1 H  _% ]( L, ]- j) c" l1 a" B
        CA a(99);
8 F+ ]$ G" [7 E: ^$ h1 i        a.get();
, O2 h( l8 N/ V" P* T$ j) _        a=CA(1000);1 l9 z" ~& |& ~
) O* L- I( ?3 ]  ?. t
        return 0;
! l+ ~3 L. C% J) W8 T' p1 |}5 L# F- x$ R3 p; g+ @. K; V/ B
( b" X0 p" G: c$ a# B# b7 `. n
小甲鱼最新课程 -> https://ilovefishc.com

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

GMT+8, 2025-8-20 18:12

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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