鱼C论坛

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

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

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

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

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

x
本帖最后由 (@_@) 于 2013-3-21 14:42 编辑 - W; l- }2 p! k/ T% U! d; D5 N
) a  G1 R1 d6 f6 z9 X+ e
Unnamed QQ Screenshot20130321140150.gif
8 Z5 n' K, }  H' ^& g0 ~#include <iostream>
- l8 z+ z" w3 B, u  K# x- Y! g; h7 `1 z9 }5 q
using namespace std;' h3 n* N0 i+ Z6 R* `- S5 Z' T5 ?9 q
0 A$ v' e. o+ ~
class CA
6 K& E. n+ t: H8 w* W+ k) \; B8 l{
/ d5 Y8 V& ]( Z/ K/ b9 \public:
/ K; L) ?4 |/ T        explicit CA(int );//explicit只能显示强制转换,即:a=A(1000),不能隐式强制转换:a=1000;explicit可以防止出现问题; e) T! A  a" J! r+ C
        ~CA();0 g, _, p! C" k  m4 r
        void get();4 d# D  _* }6 D% Y" N2 Z
/ m2 h' y) D5 C+ y) `9 \% |
private:
0 X2 z, ]3 U% t- h' \  i3 z2 l        int i;
5 G3 X! I2 C: H) L* H% U0 A8 I};
! h6 o, j/ O; e( Q/ R
( M, s. V) O8 ^+ G& P% KCA::CA(int x)
* _- J# a3 g1 X2 n6 E3 q8 W9 p{9 X' y: K& o" u3 d
        i=x;
: Z" i% s# k" w        cout<<"构造函数在执行..."<<i<<endl;
1 o4 B) _0 a+ I1 I}, @2 O1 X& h9 h3 a8 n  }- l2 Z
void CA::get()
; W8 t8 |& N) W% r{
5 b7 K* O$ v+ Z        cout<<i<<endl;" D2 [1 z4 g4 W1 n5 H
}* v3 ^8 y. @, }% c: C
, z: e/ k0 G: W2 c
CA::~CA()
- i" q/ L0 Z2 ~  _9 p/ L# t{
3 P- X* n6 {2 z( `- Q        cout<<"析构函数在执行..."<<i<<endl;$ O% s2 C2 V# r
}8 G, A+ v' Z/ w0 y
& Z4 |2 I  @% p0 q( Z- W. `
int main(void); Q5 {* z3 b) y! B
{
; T- W1 a7 V! N# r7 z8 B! x        CA a(99);) M, _: |& q1 F
        a.get();- G. Q  J, o- m7 ?
        a=CA(1000);
6 d- J, |$ C4 ?& T" T- {. Z# x8 j9 R9 w- h! D
        return 0;/ J3 _" J4 {  b7 Q- A
}; i; v/ {0 x3 X6 A
' @  k4 Z. }& f. q+ f3 o: W- A
小甲鱼最新课程 -> https://ilovefishc.com

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

GMT+8, 2026-6-14 12:12

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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